关于this:js-之-this-指向问题-函数执行上下文中的-this
函数执行上下文中的 this 在下面咱们晓得,个别的调用办法,是调用 window 上的办法。 那怎么获取以后函数的 this 呢? 1 通过 call/bind/apply 扭转 this this.myName = 'jszhang';let foo = function() { this.myName = 'zhangsan';}foo();console.log(window.myName); // 输入啥?console.log(foo.myName); // 输入啥?这时候的 this 指向 window,所以输入后果为; zhangsan undefined 通过 call 绑定后: this.myName = 'jszhang';let foo = function() { this.myName = 'zhazhazhang';}foo.call(foo);console.log(window.myName); // 输入啥?console.log(foo.myName); // 输入啥?输入后果为: jszhang zhazhazhang 当然你也能够换成 apply 和 bind,这里不做累述。 2 通过对象调用办法设置应用对象来调用其外部的一个办法,该办法的 this 是指向对象自身的。 案例 1 let myObj = { name: 'jszhang', showThis: function() { console.log(this.name); },};myObj.showThis(); // 输入啥?答案:输入 jszhang。 ...