小编典典

如何获得对象的长度

javascript

是否有任何内置函数可以返回对象的长度?

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

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


阅读 282

收藏
2020-05-01

共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是有确保你只从字面对象计数的属性,而不是从它的原型属性是“继承”。

2020-05-01