for (kind in animals) {
content += animals[kind][0].name + '<br>';
}
这会从我的 JSON 中返回每种动物的名字。我正在努力获取所有名称而不仅仅是 [0]
。由于似乎没有像 [*]
这样的简单通配符,我尝试在第一个 for 循环中放入第二个 for 循环,如下所示:
for (var kind in animals) {
for (var i in kind) {
content += animals[kind][i].name + '<br>';
}
}
但正如它应该的那样,这根本行不通。
我知道使用 Underscore.JS 之类的东西可以轻松完成此任务,但我真的很想仅使用纯 Vanilla 来完成。
最佳答案
AFAIU animals[kind]
是一个数组。
在这种情况下,您可以使用 forEach而不是嵌套循环(这在您的代码中是错误的)。
for (var kind in animals) {
animals[kind].forEach(function(v) {
content += v.name + '<br>';
});
}
关于javascript - JS : Nested for loop while parsing JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31750716/