function foo() { "use strict"; console.log( this.a );
}var a = 2;
foo();使用嚴(yán)格模式,默認(rèn)綁定無(wú)法到達(dá)全局,出現(xiàn)undefined這個(gè)可以理解但是用一個(gè)匿名函數(shù)就: function foo() {
console.log( this.a );
} var a = 2;
(function(){ "use strict";
foo(); // 2
})();這要如何理解,這里的this不是應(yīng)該指向匿名函數(shù)?調(diào)用棧不是全局=>匿名函數(shù)=>foo?補(bǔ)充:疑惑在于為什么第二種寫(xiě)法會(huì)是那樣的結(jié)果。備注:討論只局限在es3范疇,請(qǐng)不要用胖箭頭它的this指向和es3不同
關(guān)于this的問(wèn)題
慕桂英3389331
2018-09-10 09:09:35