给定以下代码:
var tmp = [0];
for(var i=0;i<100;i++) {
tmp[0] = i;
console.log(tmp);
}我期望输出为,1,2,3等
但我得到的却是99,99,99,99,等等
但是,在调试器(firebug)中单步执行代码会得到正确的结果,1,2。
发布于 2010-08-09 13:15:45
console.log(tmp[0])当您放置console.log(tmp)时,您将记录整个数组对象。Firebug只创建到对象的链接,然后当您在firebug中“查看”对象时,您查看的是它的当前状态(在for循环完成之后)。
https://stackoverflow.com/questions/3437481
复制相似问题