2013-02-13 202 views
-1

我在ajax響應中收到下面的Json數據...我不知道如何遍歷它我通過它的wana循環並將其排除,我將會在HTML DOM中也使用wana緩存這個數據以用於沒有更多的Ajax請求,如果數據已經可用...Ajax:如何通過巨大的JSON數據循環

我該怎麼做, 我試圖用$ .each(data,function核心價值){ - - })。但問題是通過數據循環我想要把一個循環和內部它我想填充一些其他數組或對象...

這是否有任何意義,我們可以做到這一點?

{"CountryCode":"ABW","Language":"Dutch"}{"CountryCode":"ABW","Language":"English"}{"CountryCode":"ABW","Language":"Papiamento"}{"CountryCode":"ABW","Language":"Spanish"}{"CountryCode":"AFG","Language":"Balochi"}{"CountryCode":"AFG","Language":"Dari"}{"CountryCode":"AFG","Language":"Pashto"}{"CountryCode":"AFG","Language":"Turkmenian"}{"CountryCode":"AFG","Language":"Uzbek"}{"CountryCode":"AGO","Language":"Ambo"}{"CountryCode":"AGO","Language":"Chokwe"}{"CountryCode":"AGO","Language":"Kongo"}{"CountryCode":"AGO","Language":"Luchazi"}{"CountryCode":"AGO","Language":"Luimbe-nganguela"}{"CountryCode":"AGO","Language":"Luvale"}{"CountryCode":"AGO","Language":"Mbundu"}{"CountryCode":"AGO","Language":"Nyaneka-nkhumbi"}{"CountryCode":"AGO","Language":"Ovimbundu"}{"CountryCode":"AIA","Language":"English"}{"CountryCode":"ALB","Language":"Albaniana"}{"CountryCode":"ALB","Language":"Greek"}{"CountryCode":"ALB","Language":"Macedonian"}{"CountryCode":"AND","Language":"Catalan"}{"CountryCode":"AND","Language":"French"}{"CountryCode":"AND","Language":"Portuguese"}{"CountryCode":"AND","Language":"Spanish"}{"CountryCode":"ANT","Language":"Dutch"}{"CountryCode":"ANT","Language":"English"}{"CountryCode":"ANT","Language":"Papiamento"}{"CountryCode":"ARE","Language":"Arabic"}{"CountryCode":"ARE","Language":"Hindi"}{"CountryCode":"ARG","Language":"Indian Languages"}{"CountryCode":"ARG","Language":"Italian"}{"CountryCode":"ARG","Language":"Spanish"}{"CountryCode":"ARM","Language":"Armenian"}{"CountryCode":"ARM","Language":"Azerbaijani"}{"CountryCode":"ASM","Language":"English"}{"CountryCode":"ASM","Language":"Samoan"}{"CountryCode":"ASM","Language":"Tongan"}{"CountryCode":"ATG","Language":"Creole English"}{"CountryCode":"ATG","Language":"English"}{"CountryCode":"AUS","Language":"Arabic"}{"CountryCode":"AUS","Language":"Canton Chinese"}{"CountryCode":"AUS","Language":"English"}{"CountryCode":"AUS","Language":"German"}{"CountryCode":"AUS","Language":"Greek"}{"CountryCode":"AUS","Language":"Italian"}{"CountryCode":"AUS","Language":"Serbo-Croatian"}{"CountryCode":"AUS","Language":"Vietnamese"}{"CountryCode":"AUT","Language":"Czech"}{"CountryCode":"AUT","Language":"German"}{"CountryCode":"AUT","Language":"Hungarian"}{"CountryCode":"AUT","Language":"Polish"}{"CountryCode":"AUT","Language":"Romanian"}{"CountryCode":"AUT","Language":"Serbo-Croatian"}{"CountryCode":"AUT","Language":"Slovene"}{"CountryCode":"AUT","Language":"Turkish"}{"CountryCode":"AZE","Language":"Armenian"}{"CountryCode":"AZE","Language":"Azerbaijani"}{"CountryCode":"AZE","Language":"Lezgian"}{"CountryCode":"AZE","Language":"Russian"}{"CountryCode":"BDI","Language":"French"}{"CountryCode":"BDI","Language":"Kirundi"}{"CountryCode":"BDI","Language":"Swahili"}{"CountryCode":"BEL","Language":"Arabic"}{"CountryCode":"BEL","Language":"Dutch"}{"CountryCode":"BEL","Language":"French"}{"CountryCode":"BEL","Language":"German"}{"CountryCode":"BEL","Language":"Italian"}{"CountryCode":"BEL","Language":"Turkish"}{"CountryCode":"BEN","Language":"Adja"}{"CountryCode":"BEN","Language":"Aizo"} 
+0

不,你的問題沒有意義。 – 2013-02-13 06:44:00

回答

1

您的問題可以分兩個步驟來解決:

1)您的JSON數據轉換爲PHP字符串 2)遍歷數組:

步驟1)轉換爲數組

$arr = json_decode($jsondata); 

步驟2)迭代陣列

arrayRecurssive($arr); 

function arrayRecurssive($arr){ 

    foreach($arr as $key=>$val){ 
     if(is_array($val)){ 
      echo "$key\n"; 
      arrayRecurssive($val); 
     }else{ 
      echo "$key\n"; 
      echo "$val\n"; 
     } 

    } 
} 

在我上面的示例中,使用'\ n'作爲我的新行,但這也可能是<br/>。進一步格式化的輸出留作編碼器的練習:-)

1

json數據似乎格式不正確。它應該是:

[{"CountryCode":"ABW","Language":"Dutch"},{"CountryCode":"ABW","Language":"English"},{"CountryCode":"ABW","Language":"Papiamento"},{"CountryCode":"ABW","Language":"Spanish"},{"CountryCode":"AFG","Language":"Balochi"},{"CountryCode":"AFG","Language":"Dari"},{"CountryCode":"AFG","Language":"Pashto"},{"CountryCode":"AFG","Language":"Turkmenian"},{"CountryCode":"AFG","Language":"Uzbek"},{"CountryCode":"AGO","Language":"Ambo"},{"CountryCode":"AGO","Language":"Chokwe"},{"CountryCode":"AGO","Language":"Kongo"},{"CountryCode":"AGO","Language":"Luchazi"},{"CountryCode":"AGO","Language":"Luimbe-nganguela"},{"CountryCode":"AGO","Language":"Luvale"},{"CountryCode":"AGO","Language":"Mbundu"},{"CountryCode":"AGO","Language":"Nyaneka-nkhumbi"},{"CountryCode":"AGO","Language":"Ovimbundu"},{"CountryCode":"AIA","Language":"English"},{"CountryCode":"ALB","Language":"Albaniana"},{"CountryCode":"ALB","Language":"Greek"},{"CountryCode":"ALB","Language":"Macedonian"},{"CountryCode":"AND","Language":"Catalan"},{"CountryCode":"AND","Language":"French"},{"CountryCode":"AND","Language":"Portuguese"},{"CountryCode":"AND","Language":"Spanish"},{"CountryCode":"ANT","Language":"Dutch"},{"CountryCode":"ANT","Language":"English"},{"CountryCode":"ANT","Language":"Papiamento"},{"CountryCode":"ARE","Language":"Arabic"},{"CountryCode":"ARE","Language":"Hindi"},{"CountryCode":"ARG","Language":"Indian Languages"},{"CountryCode":"ARG","Language":"Italian"},{"CountryCode":"ARG","Language":"Spanish"},{"CountryCode":"ARM","Language":"Armenian"},{"CountryCode":"ARM","Language":"Azerbaijani"},{"CountryCode":"ASM","Language":"English"},{"CountryCode":"ASM","Language":"Samoan"},{"CountryCode":"ASM","Language":"Tongan"},{"CountryCode":"ATG","Language":"Creole English"},{"CountryCode":"ATG","Language":"English"},{"CountryCode":"AUS","Language":"Arabic"},{"CountryCode":"AUS","Language":"Canton Chinese"},{"CountryCode":"AUS","Language":"English"},{"CountryCode":"AUS","Language":"German"},{"CountryCode":"AUS","Language":"Greek"},{"CountryCode":"AUS","Language":"Italian"},{"CountryCode":"AUS","Language":"Serbo-Croatian"},{"CountryCode":"AUS","Language":"Vietnamese"},{"CountryCode":"AUT","Language":"Czech"},{"CountryCode":"AUT","Language":"German"},{"CountryCode":"AUT","Language":"Hungarian"},{"CountryCode":"AUT","Language":"Polish"},{"CountryCode":"AUT","Language":"Romanian"},{"CountryCode":"AUT","Language":"Serbo-Croatian"},{"CountryCode":"AUT","Language":"Slovene"},{"CountryCode":"AUT","Language":"Turkish"},{"CountryCode":"AZE","Language":"Armenian"},{"CountryCode":"AZE","Language":"Azerbaijani"},{"CountryCode":"AZE","Language":"Lezgian"},{"CountryCode":"AZE","Language":"Russian"},{"CountryCode":"BDI","Language":"French"},{"CountryCode":"BDI","Language":"Kirundi"},{"CountryCode":"BDI","Language":"Swahili"},{"CountryCode":"BEL","Language":"Arabic"},{"CountryCode":"BEL","Language":"Dutch"},{"CountryCode":"BEL","Language":"French"},{"CountryCode":"BEL","Language":"German"},{"CountryCode":"BEL","Language":"Italian"},{"CountryCode":"BEL","Language":"Turkish"},{"CountryCode":"BEN","Language":"Adja"},{"CountryCode":"BEN","Language":"Aizo"}] 

然後,您可以簡單地將它分配給一個數組。例如:

var countries = $。parseJSON(「[{ 」COUNTRYCODE「: 」ABW「, 」語言「: 」荷蘭「},{ 」COUNTRYCODE「: 」ABW「, 」語言「: 」英語「},{ 」COUNTRYCODE「: 」ABW「,」語言 「:」 帕皮阿門託 「},{」 COUNTRYCODE 「:」 ABW 「 」語言「: 」西班牙語「},{ 」COUNTRYCODE「: 」AFG「, 」語言「: 」俾路支「},{ 」COUNTRYCODE「:」 AFG 「 」語言「: 」達里語「},{ 」COUNTRYCODE「: 」AFG「, 」語言「: 」普什圖語「},{ 」COUNTRYCODE「: 」AFG「, 」語言「: 」土庫曼斯坦「},{」 COUNTRYCODE 「:」 AFG」, 「語言」: 「烏茲別克」},{ 「COUNTRYCODE」: 「前」, 「語言」: 「安博」},{ 「COUNTRYCODE」: 「前」, 「語言」: 「紹奎」 },{ 「COUNTRYCODE」: 「前」, 「語言」: 「金剛」},{ 「COUNTRYCODE」: 「前」, 「語言」: 「Luchazi」},{ 「COUNTRYCODE」: 「前」, 「語言」 : 「Luimbe-nganguela」},{ 「COUNTRYCODE」: 「前」, 「語言」: 「Luvale」},{ 「COUNTRYCODE」: 「前」, 「語言」: 「Mbundu」},{ 「COUNTRYCODE」:」前」, 「語言」: 「Nyaneka-nkhumbi」},{ 「COUNTRYCODE」: 「前」, 「語言」: 「Ovimbundu」},{ 「COUNTRYCODE」: 「友邦保險」, 「語言」: 「英語」}, { 「COUNTRYCODE」: 「ALB」, 「語言」: 「Albaniana」},{ 「COUNTRYCODE」: 「ALB」, 「語言」: 「希臘」},{ 「COUNTRYCODE」: 「ALB」, 「語言」:」馬其頓 「},{」 COUNTRYCODE 「:」 和 「」 語言「:」 加泰羅尼亞 「},{」 COUNTRYCODE 「:」 和 「 」語言「: 」法國「},{ 」COUNTRYCODE「: 」和「, 」語言「: 」葡萄牙「},{ 」COUNTRYCODE「:」 AND 「 」語言「: 」西班牙語「},{ 」COUNTRYCODE「: 」蟻族「, 」語言「: 」荷蘭「},{ 」COUNTRYCODE「: 」蟻族「, 」語言「: 」英語「},{」 COUNTRYCODE 「:」 蟻族」, 「語言」: 「帕皮阿門託」},{ 「COUNTRYCODE」: 「有」, 「語言」: 「阿拉伯語」},{ 「COUNTRYCODE」: 「有」, 「語言」: 「印地文」} ,「國家代碼」:「ARG」,「語言」:「印度語言」},{「國家代碼」:「ARG」,「語言」:「意大利語」},{「國家代碼」:「ARG」 : 「西班牙」},{ 「COUNTRYCODE」: 「ARM」, 「語言」: 「亞美尼亞」},{ 「COUNTRYCODE」: 「ARM」, 「語言」: 「阿塞拜疆」},{ 「COUNTRYCODE」: 「ASM」 「語言」: 「英語」},{ 「COUNTRYCODE」: 「ASM」, 「語言」: 「薩摩亞」},{ 「COUNTRYCODE」: 「ASM」, 「語言」: 「同安」},{ 「COUNTRYCODE」 :「ATG」,「Language」:「Creole English」},{「CountryCode」:「ATG」,「Language」:「English」},{「CountryCode」:「AUS」,「語言」 ,「CountryCode」:「AUS」,「Language」:「廣東話」},{「CountryCode」:「AUS」,「語言」:「英語」},{「CountryCode」 : 「德國」},{ 「COUNTRYCODE」:「A美國」, 「語言」: 「希臘」},{ 「COUNTRYCODE」: 「AUS」, 「語言」: 「意大利」},{ 「COUNTRYCODE」: 「AUS」, 「語言」: 「塞爾維亞 - 克羅地亞語」}, { 「COUNTRYCODE」: 「AUS」, 「語言」: 「越南」},{ 「COUNTRYCODE」: 「AUT」, 「語言」: 「捷克」},{ 「COUNTRYCODE」: 「AUT」, 「語言」:」德國 「},{」 COUNTRYCODE 「:」 AUT 「 」語言「: 」匈牙利「},{ 」COUNTRYCODE「: 」AUT「, 」語言「: 」波蘭「},{ 」COUNTRYCODE「: 」AUT「,」語言 「:」 羅馬尼亞 「},{」 COUNTRYCODE 「:」 AUT」, 「語言」: 「塞爾維亞 - 克羅地亞語」},{ 「COUNTRYCODE」: 「AUT」, 「語言」: 「斯洛文尼亞」},{ 「COUNTRYCODE」 : 「AUT」, 「語言」: 「土耳其」},{ 「COUNTRYCODE」: 「阿塞拜疆」, 「語言」: 「亞美尼亞」},{ 「COUNTRYCODE」: 「阿塞拜疆」, 「語言」: 「阿塞拜疆」}, { 「COUNTRYCODE」: 「阿塞拜疆」, 「語言」: 「Lezgian」},{ 「COUNTRYCODE」: 「阿塞拜疆」, 「語言」: 「俄羅斯」},{ 「COUNTRYCODE」: 「BDI」, 「語言」:」法國 「},{」 COUNTRYCODE 「:」 BDI 「 」語言「: 」基隆迪「},{ 」COUNTRYCODE「: 」BDI「, 」語言「: 」斯瓦希里語「},{ 」COUNTRYCODE「: 」BEL「,」語言 「:」 阿拉伯語 「},{」 COUNTRYCODE 「:」 BEL 「 」語言「: 」荷蘭「},{ 」COUNTRYCODE「: 」BEL「, 」語言「: 」法國「},{ 」COUNTRYCODE「:」 BEL」, 「語言」: 「德國」},{ 「COUNTRYCODE」: 「BEL」, 「語言」: 「意大利」},{ 「COUNTRYCODE」: 「BEL」, 「語言」: 「土耳其」},{ 「COUNTRYCODE」: 「奔」, 「語言」: 「ADJA」},{ 「COUNTRYCODE」: 「BEN」, 「語言」: 「愛藏」}]');

alert(countries.length);