访问嵌套JSON对象的键,其中键是动态的

Accessing key of nested JSON object where key is dynamic

本文关键字:动态 对象 嵌套 访问 JSON      更新时间:2023-09-26

我正在使用以下内容来记录一个JSON密钥,该密钥对控制台是动态的;但是,键所属的对象中嵌套了另一个对象,我需要访问该对象的值。更复杂的是,这个对象键包含特殊字符,所以我必须使用方括号。这怎么可能呢?

for (var key in data.query.results.json) {
    console.log(key);
}

我试过做:console.log(key["http:__purl.org_rss_1.0_title"].value);和其他一些变体,但似乎什么都不起作用。

如果我理解正确,如果对象包含其他对象(2级),只需逐个执行"for"语句

for (var key in data.query.results.json) {
  for (var key2 in data.query.results.json[key]) {
    if(key2 == "whateverKey")
      console.log(data.query.results.json[key][key2]);
  }
}

如果有更多级别的嵌套,请使用递归函数。