私はウィキペディアの例に従っています:
var counter = (function(){
var i = 0;
return {
get: function(){
return i;
},
set: function( val ){
i = val;
},
increment: function() {
return ++i;
}
};
}());
内部に変数を含むスタック フレームを保持するクロージャーがあり、複数のカウンターを作成できることを理解しています。これはi
明らかです。しかし、なぜ IIFE 構文がここで使用されるのでしょうか? それなしでコードを書き直すと、同じように機能します。
var counter2 = function(){
var i = 0;
return {
get: function(){
return i;
},
set: function( val ){
i = val;
},
increment: function() {
return ++i;
}
};
};
c2 = counter2();
ウィキペディアの例でIIFEが何をしているのかについての説明をいただければ幸いです。