これについての説明が欲しいです(javascriptkit.comから取得):
function buildList(list) {
var result = [];
for (var i = 0; i < list.length; i++) {
var item = 'item' + list[i];
result.push( function() {alert(item + ' ' + list[i])} );
}
return result;
}
function testList() {
var fnlist = buildList([1,2,3]);
// using j only to help prevent confusion - could use i
for (var j = 0; j < fnlist.length; j++) {
fnlist[j]();
}
}
とてもtestList()
簡単です。最初の関数を段階的にたどってみましたが、これが返されると考えたものです。
項目 1 1
項目 2 2
項目 3 3
私が得られないのは、 が 3 回result
返される方法ですitem 3 undefined
-なぜ undefined なのか、なぜのみitem 3
?
-私が学ぼうとしているのは、これを機能させることではなく、どの部分が欠けているのか、なぜ期待どおりに出てこないのかを理解することです.