javascript - 如何获取对象长度

标签 javascript json object

有没有可以返回对象长度的内置函数?

例如,我有 a = { 'a':1,'b':2,'c':3 } 应该返回 3。如果我使用 a.length 它返回 undefined.

可能是一个简单的循环函数,但我想知道是否有内置函数?

有一个相关问题 (Length of a JSON object) - 在选择的答案中,用户建议将对象转换为数组,这对我的任务来说不是很舒服。

最佳答案

对于支持 Object.keys() 的浏览器你可以这样做:

Object.keys(a).length;

否则(特别是在 IE < 9 中),您可以自己使用 for (x in y) 循环遍历对象:

var count = 0;
var i;

for (i in a) {
    if (a.hasOwnProperty(i)) {
        count++;
    }
}

hasOwnProperty 用于确保您只计算对象字面量的属性,而不是它从原型(prototype)“继承”的属性。

关于javascript - 如何获取对象长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5533192/

相关文章:

javascript - 如何在不调用 Chrome 的 CORS 预检请求的情况下指定 `application/json` Content-Type?

javascript - 如果没有抛出错误,如何在 IE 中进行调试?

数组内值的 JavaScript 平均值

javascript - 如何将 Json 数组转换为 vis.dataset

javascript - 如何将带有文本类型值的 var 放入 jQuery 函数中

javascript - 在javascript中对数据进行排序

java - Java中清晰的多维对象

javascript - URI 错误 : malformed URI sequence?

java - 使用 Jackson 将 json 扁平化为 map

java - 找不到符号,我做错了什么?