我有一个问题,我不知道为什么我拨打tab[4]()
或任何其他号码< 0,9>控制台中的结果总是10。
我猜测i
的结果是i
var tab = [];
for (var i = 0; i < 10; i++) {
tab[i] = function(){
console.log(i)
}
}
答案 0 :(得分:1)
尝试以下
var tab = [];
for (var i = 0; i < 10; i++) {
tab[i] = (function(i) {
return function() {
console.log(i)
}
})(i);
}
&#13;
答案 1 :(得分:0)
var tab = [];
for (var i = 0; i < 10; i++) {
let a = i;
tab[i] = function(){
console.log(a);
}
}
tab[1]();
tab[2]();