如何统计JSON文件中数组内的对象数量?
问题描述:
所以,我的服务器将接收具有以下结构的JSON文件:如何统计JSON文件中数组内的对象数量?
{
"serial": "123",
"pass": "abc",
"archives": [
{
"values" = 1
},
{
"values" = 2
},
{
"values" = 3
},
{
"values": 4
}
]
}
我怎么能算数组里面的“档案”的对象的数量从我的主文件? (这里是4个)
答
如果你的对象被称为obj
:
var obj = {
"serial": "123",
"pass": "abc",
"archives": [
{
"values": 1
},
{
"values": 2
},
{
"values": 3
},
{
"values": 4
}
]
};
然后,它obj.archives.length
。
顺便说一句,我修正了你的JSON,因为它是无效的。在真实服务器上,您需要将JSON.parse
放在try/catch
区块内或使用tryjson
以避免将代码损坏为无效的JSON。
答
Array.length:JavaScript数组长度属性返回一个无符号的32位整数,该整数指定数组中元素的数量,也可用于设置数组的长度。
语法:
返回的数组的长度:
array.length
设置一个数组的长度:
array.length = number
代码:
var obj = {"serial": "123","pass": "abc","archives": [{"values": 1}, {"values": 2}, {"values": 3}, {"values": 4}]};
var len = obj.archives.length;
console.log(len);
请注意,您可以设置length属性来截断随时数组。当您通过更改其长度属性来扩展数组时,实际元素的数量不会增加;例如,如果在当前为2时将长度设置为3,则数组仍然只包含2个元素。因此,length属性不一定表示数组中定义的值的数量。另请参阅relationship between length and numerical properties。
你通常如何找到数组的长度? – jonrsharpe
那不是有效的JSON。 – corn3lius
这真的没有显示研究努力... – Argee