想用回调函数给数组赋值,但是只会打印一个空的数组
如果回调函数内是area[i]=1,则能正常赋值。不懂为什么会这样。
function initSpace(){
var area = new Array(18);
foreach(area,function(row,i){
row=1;
});
}
console.log(area.toString());
}
function foreach(list, callback) {
for (var i = 0; i < list.length; i++) {
callback(list[i], i);
}
}
那为什么initSpace()内的有正常打印,在onload直接报错,
因为onload中你重新定义了area为null,一个null你对它进行操作。当然要报错
追问可是area这个变量我只在onload中声明而已,initSpace中对这个变量赋值。大神可以私信加下联系方式吗。你私信我,你匿名了,我不能私信你