私はコードを持っています: デモ jsFiddle
これは 3 回ループし、そのたびにループ シーケンス番号を返す新しい関数を作成します。
配列0、1、および 2 に挿入されるループ シーケンスが表示されることを期待していました。
a[i] = function() {
return i;
}
すべてが正常に見えますが、取得した配列を印刷しようとすると
結果:
arr[0] is =>function () { return i; }
arr[1] is =>function () { return i; }
arr[2] is =>function () { return i; }
コード:
function f() {
var a = [];
var i;
for (i = 0; i < 3; i++) {
a[i] = function() {
return i;
}
}
return a;
}
var arr = f();
for (var index = 0; index < arr.length; index++) {
document.write("<b>arr[" + index + "] is </b>=>" + arr[index] + "<br>");
}
結果0、1、および 2が得られないのはなぜですか。
多くのthx。