1

以下のように、バージョン B での f1 の実行がバージョン A と異なるのはなぜですか?
// バージョン A

var f = {};
for( var i=0 ; i<3 ; i++ ) {
f[i] = function() { alert(i); }
}

// バージョン B

var f = {};
for( var i=0 ; i<3 ; i++ ) {
f[i] = function(j) { return function() { alert(j); }; }(i);
}
4

2 に答える 2