小编典典

如何获取对象长度

all

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

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

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


阅读 60

收藏
2022-04-15

共1个答案

小编典典

对于支持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可以确保您只计算对象文字中的属性,而不是它从其原型“继承”的属性。

2022-04-15