我有一个javascript对象,其中包含6个可能包含其他数组或对象的对象。使用javascript或jquery,如何快速计算这6个顶级对象的数量
1 Object { salesman="1714, name="Lucien Layton", events={...}}
2 Object { salesman="1715", name="Hugo Hayne", events={...}}
3 Object { salesman="17165", name="Jonas Jessie", events={...}}
4 Object { salesman="1718", name="Ezequiel Ebner", events={...}}
5 Object { salesman="1721", name="Randolph Rodda", events={...}}
6 Object { salesman="1722", name="Edwin Earles", events={...}}
答案 0 :(得分:5)
你可以这样做......
var objectsLength = 0;
for ({}[++objectsLength] in objects) {}
它有点时髦,但也很酷。不过,由于它的不寻常性,我只是建议更常用的方法......
var objectsLength = 0;
for (var prop in objects) {
objectsLength++;
}
如果您对自己的环境不确定并认为它们可能是原型链上的可迭代属性,请使用hasOwnProperty()
(或使用Object.create(null)
创建对象)。
如果浏览器支持对您有利...
var objectsLength = Object.keys(objects).length;