1.阅读《你不知道的javascript》是里面有段代码如下:
function foo() {
var a = 2; this.bar();
}
function bar() {
console.log(this.a);
}
foo();
作者说this.bar()是引用不到bar()函数,调用bar()应省去前面的this。而在接下来的2.2.1节中作者又举了例子:
function foo() { console.log(this.a) }var a = 2foo()//2
这里this.a却没问题。
2.我的困惑是:foo调用时是默认绑定,foo中的this应绑定到全局,而全局中有bar函数,所以this.bar()应该可以引用到bar函数。那么作者说的foo中的this.bar()引用不到bar()函数又该如何理解?还请大家不惜赐教,非常感谢!
相关分类