首页 > 解决方案 > “this”内部函数调用另一个函数

问题描述

    Function.prototype.bind = function (obj) {
      const self = this;
      console.log(this);
      return () => {
        return this.apply(obj, arguments);
      };
    }

    MyObj1 = function () {
      this.myName = 'myObj1';
    }

    MyObj1.prototype.who = function () {
      console.log(this.myName);
    }

    myObj2 = {
      myName: 'myObj2'
    }

    myObj1 = new MyObj1();
    myObj1.who();

    who2 = myObj1.who.bind(myObj2);
    who2();

产生以下输出:

myObj1

ƒ () {
      console.log(this.myName);
}

myObj2

who2 = myObj1.who.bind(myObj2); .who视为对象并将其绑定它?看起来但仍然让我感到困惑

标签: javascript

解决方案


推荐阅读