javascript计算json标记中元素的数量
您好,我在javascript中有一个json,如下所示:javascript计算json标记中元素的数量,javascript,Javascript,您好,我在javascript中有一个json,如下所示: {"data":[{"stuff":[ {"onetype1":[ {"id":1,"name":"John Doe"}, {"id":2,"name":"Don Joeh"} ]}, {"othertype2":[ {"id":2,"company":"ACME"} ]}] },{"otherstuff3":[ {"thing":
{"data":[{"stuff":[
{"onetype1":[
{"id":1,"name":"John Doe"},
{"id":2,"name":"Don Joeh"}
]},
{"othertype2":[
{"id":2,"company":"ACME"}
]}]
},{"otherstuff3":[
{"thing":
[[1,42],[2,2]]
}]
}]}
我想知道如何在javascript中计算有多少个“onetype”标记。在php中,我可以使用count请求它,但在javascript中,我尝试使用data.lenght,但没有成功。知道怎么做吗
非常感谢我想您正在寻找
Object.keys(data).length
。这里有一个适用于旧浏览器的垫片:
顺便说一句,没有所谓的“json标记”——您使用的“标记”一词只适用于HTML/XML。这是您的嵌套对象
var data = [{"stuff":[
{"onetype1":[
{"id":1,"name":"John Doe"},
{"id":2,"name":"Don Joeh"}
]},
{"othertype2":[
{"id":2,"company":"ACME"}
]}]
},{"otherstuff3":[
{"thing":
[[1,42],[2,2]]
}]
}]
这就是访问长度和元素的方式
data.length // 2
data[0].stuff.length // 2
data[0].stuff[0].onetype1.length // 2
data[0].stuff[0].onetype1[0] // Object {id: 1, name: "John Doe"}
data[1].otherstuff3.length // 1
data[1].otherstuff3[0].thing.length // 2
data[1].otherstuff3[0].thing[0] // [1, 42]
如果你可以使用
JQuery
查看要发布的答案。请检查我下面的答案,并让我知道你是否觉得它有用。我认为将这个问题指定为非主题是对指南的过于严格的解释……据我所知,它无法满足的唯一条件是它不是“必要的最短代码”重现问题。但代码并不多,我们经常要求新用户发布更多代码来提供上下文,所以这似乎是一个奇怪的问题。