chrome devtools不一致阵列长度

时间:2014-01-22 11:06:16

标签: javascript arrays google-chrome google-chrome-devtools console.log

我似乎偶然发现Chrome DevTools存在不一致之处。

enter image description here

以上是devtools的截图。首先,我被告知打印的对象包含BodyHead。头部应该是长度为1的数组。当我展开时,这个数组突然变成长度为2.

扩展相关阵列时,我得到以下内容;

enter image description here

所以数组中似乎也有一个空字符串。这个空字符串是我的代码导致一些问题的原因,这促使我调查。我最关心的是DevTools输出,有没有人能想到为什么devtools会为同一个数组提供两种不同的长度?

DevTools会自动将长度为1的数组的内容解析为单独的变量吗?在这种情况下,我原以为Head: [Array[2]]

我正在使用console.log在ubuntu虚拟机上的Chrome Dev工具中输出列出的屏幕截图。

1 个答案:

答案 0 :(得分:4)

这是因为初始显示,具有以下格式的那个:

Object {Body: Array[20], Head: Array[1]}
控制台首次登录时会生成

。展开后,它会加载所有对象的属性,如果在记录和打开它之间属性发生了变化,它将显示不同的值。您可以将鼠标悬停在显示在对象后面的浅蓝色i上,以查看Chrome对此本身的看法。