关于javascript:如果Object在数组中,我如何找到键的总数

How can i find the total number of keys if the Object is inside an array

本问题已经有最佳答案,请猛点这里访问。

Possible Duplicate:
How to efficiently count the number of keys/properties of an object in JavaScript?

1
var array = [{key:value,key:value}]

如果它是一个对象数组,我如何才能找到键的总数。当我检查数组的长度时,它会给我一个。


如果你想知道的一些独特的性质的Objects在一个Array,这应该做它。 P / < >

1
2
3
4
5
6
7
8
9
10
11
12
13
var uniqueProperties = [];

for (var i = 0, length = arr.length; i < length; i++) {
   for (var prop in arr[i]) {
       if (arr[i].hasOwnProperty(prop)
           && uniqueProperties.indexOf(prop) === -1
          ) {
          uniqueProperties.push(prop);
       }
   }
}

var uniquePropertiesLength = uniqueProperties.length;

jsfiddle。 P / < >

注意这是一个ArrayindexOf()没让最好的browser支援。你不能总是augment的Arrayprototype(虽然为安全)使它的部分util对象或similar)。 P / < >


如果阵列的只会有一个对象,array[0]represents同步对象。 P / < >

如果有超过一个对象,你需要决定到底什么是你想要的计数。 P / < >