javascript - 如何在 Chrome 中显示 JavaScript 数组/对象的所有属性?

标签 javascript arrays object google-chrome-devtools

JavaScript 有一个 surprisingly confusing distinction数组和对象之间和 array-like objects :

var a = [];  // empty array, right?
a.foo = 'bar';  // a is also an object

问题是,当在 Chrome DevTools 控制台中检查变量时,会出现 a 只是一个空数组:

Chrome is confused by objects/arrays

这种数组/对象的使用发生在 3rd party code 上。 ,所以我正在寻找一种方法来在 Chrome DevTools 中显示变量的所有属性

最佳答案

在现代浏览器(IE9+、FF4+、Chrome5+、Opera12+、Safari5+)中,您可以使用内置的 Object.keys 方法:

Object.keys(a);

DevTools Screenshot

来自MDN :

Object.keys() 方法返回给定对象自身可枚举属性的数组,其顺序与 for...in 循环提供的顺序相同(区别在于 for-in 循环枚举原型(prototype)链也是如此)。

关于javascript - 如何在 Chrome 中显示 JavaScript 数组/对象的所有属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25318687/

相关文章:

javascript - 设置元素属性时未触发 Polymer "property-changed"事件

javascript - 全日历跳转到日期

arrays - 从 Matlab 上的二进制文件中读取稀疏数组

c - 如何引用二维数组?

javascript - 使用 forEach 访问对象数据,而不使用 forEach 的 thisArg?

java - 在 jsp 上设置 Ajax 响应不起作用

javascript - 尝试从数组中随机化单词并在 5 后停止循环

arrays - UserDefaults 数组连续返回 nil

javascript - 比较数组与 JavaScript 或 jQuery

HTML 对象 - 将视频放入网页 - 无法停止 AUTOSTART