我想知道我的JSON对象中有多少项。我已经看到了许多答案,但它们都涉及到循环的共同价值。我希望结果告诉我这个对象有2个项目。任何帮助都会很棒!
[{"manager_first_name":"jim","manager_last_name":"gaffigan"}]
答案 0 :(得分:2)
您可以在较新的浏览器中使用Object.keys。它将返回对象中所有键的数组,该数组将有一个length属性,告诉您对象中有多少项:
var arr = [{"manager_first_name":"jim","manager_last_name":"gaffigan"}];
var length = Object.keys(arr[0]).length;
在非支持的浏览器中,您必须迭代
var arr = [{"manager_first_name":"jim","manager_last_name":"gaffigan"}];
var i = 0;
for (var key in arr[0]) i++;
答案 1 :(得分:0)
你可以这样做:
var arr = [{"manager_first_name":"jim","manager_last_name":"gaffigan"}],
length = 0,
obj = arr[0]; // Get first obj from array
for(var k in obj){
if( obj.hasOwnProperty(k) ) {
length++;
}
}
console.log(length); // Shows 2
您应该使用hasOwnProperty
,因为您还可以使用函数扩展Object,否则也可能会计算als键。
链接:
答案 2 :(得分:0)
尝试
var jsonArr = [{"manager_first_name":"jim","manager_last_name":"gaffigan"}];
var itemCount = JSON.stringify(jsonArr).split('":"').length - 1;
当然,这是一种相当粗略(且不可靠)的方式,但如果您只想要项目计数,这应该像魅力一样。