如何在嵌套的json数据中导航

时间:2012-04-11 12:10:36

标签: jquery json

我需要一些帮助来导航json文件。

我希望从这样的回报中获取所有国家/地区名称:

[{"country":
    {
     "225":["United Kingdom","Europe"],
     "206":["Switzerland","Europe"],
     "176":["Romania","Europe"],
     "127":["Madagascar","AMEA"],
     "217":["Tunisia","AMEA"]
    }
  }]

当我不知道或列出225,206等等时,我怎么做到这一点?

2 个答案:

答案 0 :(得分:3)

var arr = [
    {
       "country": {
            "225":["United Kingdom","Europe"],
            "206":["Switzerland","Europe"],
            "176":["Romania","Europe"],
            "127":["Madagascar","AMEA"],
            "217":["Tunisia","AMEA"]
       }
    }
]

如果您有密钥(例如225),则arr[0]["country"]["225"]会返回包含["United Kingdom","Europe"]的数组

如果你想获得一个键列表(和各自的值),只需使用

var countryObj = arr[0]["country"];
for (key in countryObj) {
   if (countryObj.hasOwnProperty(key)) {
      console.log(key);                /* e.g. 206 */ 
      console.log(countryObj[key]);    /* e.g. ["Switzerland","Europe"] */
      console.log(countryObj[key][0]); /* e.g. "Switzerland" */
  }
}

答案 1 :(得分:0)

你也可以将它用作数组,

如果您不知道键255,256并且想要仅获取国家/地区,那么可能一个好方法是使用jquery来处理jquery对象

$(arr[0]["country"]).each(function(key,country){
  alert(country);
})