數(shù)據(jù)三:
{
"china":[
{"name":"hangzhou", "item":"1"},
{"name":"shanghai", "item":"2"},
{"name":"sichuan", "item":"3"}
],
"America":[
{"name":"aa", "item":"12"},
{"name":"bb", "item":"2"}
],
"Spain":[
{"name":"cc", "item":"1"},
{"name":"dd", "item":"23"},
{"name":"ee", "item":"3"}
]
};
上述代碼也是json數(shù)據(jù)的一種表現(xiàn)形式缤言,而且該形式也是很常見的灰伟,最外層是一個對象回官,對象中鍵對應(yīng)的值是一個數(shù)組母谎。數(shù)組里面又包含json對象慨蓝。在網(wǎng)絡(luò)請求這里,這樣的json數(shù)據(jù)也是很常見的竹伸,下面我們就來看一下如何解析這樣的json數(shù)據(jù)泥栖。
首先是通過for-in循環(huán)遍歷json數(shù)據(jù)value2,countryObj為value2對象的屬性名勋篓,value2[countryObj]為value2對象屬性值在這里它是一個數(shù)組吧享,cityObj是數(shù)組的一個元素,如:china對應(yīng)的值:
[
{"name":"hangzhou", "item":"1"},
{"name":"shanghai", "item":"2"},
{"name":"sichuan", "item":"3"}
],
就是一個數(shù)組,其中{"name":"hangzhou", "item":"1"},也是一個json數(shù)據(jù)譬嚣。于是,value2[countryObj][cityObj]["name"]就訪問到該對象的name的屬性值钢颂,也可以通過value2[countryObj][cityObj].name來訪問該屬性值。在這里將json解析的數(shù)據(jù)顯示在頁面上拜银。
對于這種數(shù)據(jù)類型甸陌,我們還可以采用另外一種方式解析
for (var countryObj in value2)
{
document.write(countryObj + ":
")
//document.write("? " + value2[countryObj].length);
for (var i = 0;i < value2[countryObj].length; i++)
{
document.write("? " + value2[countryObj][i]["name"] + "
");
}
}
顯示的結(jié)果: