這是《你不知道js》里面的兩段代碼,第一段代碼 this 是指向調(diào)用的位置的,也就是obj2。不明白為什么第二段代碼this不指向obj,而是指向全局了。function foo() { console.log( this.a );}var obj2 = { a: 42, foo: foo };var obj1 = { a: 2, obj2: obj2 };obj1.obj2.foo(); // 42function foo() { console.log( this.a );}var obj = { a: 2, foo: foo };var bar = obj.foo; // 函數(shù)別名!var a = "oops, global"; // a是全局對象的屬性 bar(); // "oops, global"
不明白這兩段代碼的this指向問題
青春有我
2018-12-13 19:15:13