我使用下面的代码来迭代一个JSON对象,它在顶层有一个动态密钥。
for (var key in data.query.results.json) {
if(firstSkipped == false) {
firstSkipped = true; // sets skipping variable to true so condition is met on next iteration
} else {
for (var key2 in data.query.results.json[key]) {
if(key2 == "http:__purl.org_rss_1.0_title")
titles.push(data.query.results.json[key][key2].value); // pushes titles to array
它工作正常但是,我需要添加另一个使事情变得复杂的字段。下面的字段中只有一个值,但是,我需要添加的新字段还有两个键,每个键都有一个值。我只需要选择其中一个并显示值。我尝试过以下操作,但我只是“未定义”。
for (var key3 in data.query.results.json[key]) {
if(key3 == "0")
isbns.push(data.query.results.json[key][key2][key3].value); // pushes urls to array
}
我只是尝试选择第三个键,然后搜索每个字段,直到找到名为“0”的键,然后将其值推送到数组。
我出错的任何想法?我可以尝试发布一个JSON样本,如果没有看到它就没有意义。
以下是数据的样子(这是我想要的ISBN字段):