次の構成では:
(function(){
var x = function(){
alert('hi!');
}
var y = function(){
alert("hi again!");
}
this.show = function(){
alert("This is show function!");
}
})();
オブジェクトthis
を参照するのはなぜですか? window
IIFE 内のすべてをグローバル スコープから分離する必要がありますか? x
と関数はグローバル オブジェクトy
のプロパティでもありますか?window
また、最初に put を使用してもvar h = ...
:
var h = (function(){
var x = function(){
alert('hi!');
}
var y = function(){
alert("hi again!");
}
this.show = function(){
alert("This is show function!");
}
})();
this
まだウィンドウ オブジェクトを参照していますshow()
。グローバル スコープから呼び出すことができます。どうして?