chrome调试器对象数据不一致

时间:2016-01-11 23:45:40

标签: javascript google-chrome debugging object console

我不明白如何解释这个调试数据。我做了我的对象的console.log,在控制台中出现的摘要行中我显示了windows:array [0]但是如果我展开对象,我会看到windows是一个包含2个项目的数组。 / p>

哪个是正确的?

我的代码似乎运行在摘要版本上,即。 windows数组是空的。

有谁知道我的问题是什么 - 为什么对象以不一致的方式呈现?

enter image description here

1 个答案:

答案 0 :(得分:1)

在打印对象和查看对象时,对象会发生变异。当它最初被记录时,它是空的,但是当你打开它时,已经添加了2个项目。

var obj = { arr: [] };
console.log(obj); // Will say { arr: Array[0] }
obj.arr.push(1); // Open it up in the console after this

基本上,开发工具会在日志时打印一个代表它的状态的字符串,但它会在控制台本身中存储对象的引用。