以下是我正在尝试的程序 -
function getNumFunc() {
var numbers = [];
var i = 0;
for (; i < 10; i++) {
numbers[i] = function(){
return i;
};
}
return numbers;
}
var myNumArr = getNumFunc();
console.log(myNumArr[5]());
预期产出 - 5
我发现/读到了IIFE http://javascriptissexy.com/understand-javascript-closures-with-ease/
的案例我试过了,但它不起作用..我知道我做错了什么。
我像这样传递i
,但它使我的功能错误。
尝试 -
numbers[i] = function(j){
return function(){
return j;
}();
}(i);