可能重复:
Is Chrome's JavaScript console lazy about evaluating arrays?
我不确定这是与JS或Chrome或者console.log有关,还是有兴趣得到答案。
我在Eclipse中编码并使用console.log
在Chrome中运行以进行一些调试。我的代码包含在JQuery .ready()
方法中。
我定义了一个简单的数组var arr = [1,2,3,4,5];
,然后记录数组及其第一个值,它给出了我(正如我所料)输出[1, 2, 3, 4, 5]
和1
。
然后我使用arr[0] = 12;
更新第一个值,并再次记录相同的数组和第一个值。我的代码现在看起来像这样:
var arr = [1,2,3,4,5];
console.log(arr);
console.log(arr[0]);
arr[0] = 12;
console.log(arr);
console.log(arr[0]);
获得以下输出:
[12, 2, 3, 4, 5]
1
[12, 2, 3, 4, 5]
12
我的问题是,为什么在输入该值之前调用第一个日志时,第一行和第三行都使用更新的第一个值进行记录?
这只是调用log方法的延迟还是还有其他事情在这里?
感谢您的帮助:)