在JSON中计数键/值
可能重复:
Javascript关联数组的长度
我有一个如下所示的JSON:
Object:
www.website1.com : "dogs"
www.website2.com : "cats"
>__proto__ : Object
这样打印时,我这样做:
console.log(obj);
我试图得到这个JSON内的项目的计数,obj.length返回“undefined”和obj [0] .length返回
Uncaught TypeError:无法读取未定义的属性“长度”
我希望在这种情况下返回“2”的长度。 我如何找到计数?
谢谢!
你必须自己数数:
function count(obj) {
var count=0;
for(var prop in obj) {
if (obj.hasOwnProperty(prop)) {
++count;
}
}
return count;
}
尽管现在我看到了关于该问题的第一条评论,但该页面上有一个更好的答案。 单线,或许速度如果不是更快,
function count(obj) { return Object.keys(obj).length; }
但请注意,对Object.keys()
支持似乎还不是跨浏览器。
.length
仅适用于数组,不适用于对象。
var count = 0;
for(var key in json)
if(json.hasOwnProperty(key))
count++;
链接地址: http://www.djcxy.com/p/27255.html