2014-01-20 73 views
-2

在這裏,我需要在JSON一些幫助解析JSON數組包含JSON對象中的JavaScript解析

[{"a":0,"b":"0","c":"2A","s":"A","p":0,"Time":0}, 
{"a":0,"b":"0","c":"2A","s":"A","cpu":0,"Time":0}, 
{"a":0,"b":"0","c":"2A","s":"A","p":0,"Time":0}, 
{"a":0,"b":"0","c":"2A","s":"A","p":0,"Time":0}, 
{"a":0,"b":"0","c":"2A","s":"A","p":0,"Time":0}] 

這是我的JSON格式。我如何迭代json。

data[0] = {"a":0,"b":"0","c":"2A","s":"A","p":0,"Time":0}; // get from iteration 

,並從該對象 獲取單個項目像時間= 0

+0

data [0] .Time?或者我沒有正確理解你的問題... – RoneRackal

+0

'for(int i = 0,len = data.length(); i

+0

我想迭代json數組。從第一次迭代我需要每個元素的權利?這裏第一個json對象從數組中檢索,然後我想解析list.first中的每個元素:{「a」:0,「b」:「0」,「c」:「2A」,「s」:「一個「,」p「:0,」時間「:0}秒:時間= 0 –

回答

2

假設你的JSON字符串被稱爲s,先說

var a = JSON.parse(s); 

現在a是一個數組。您可以像其他任何數組一樣遍歷它。如果由於某種原因你想要做特別的東西與每個數組元素的Time財產,你的代碼看起來就像這樣:

for (var i = 0; i < a.length; i++) { 
    doSomethingWith(a[i].Time); 
} 

在循環中,您也可以訪問a[i].aa[i].b,等等。這裏沒有什麼特別的;這都是普通的JavaScript。

Protip:小心使用術語「JSON對象」。從這個問題中你不清楚你實際上是否有JSON字符串;你展示了一個普通的JavaScript對象。 JSON是一種文本格式。一旦用JSON.parse解析字符串,您就處於JavaScript的常規世界中,並且可以使用for-loops等來訪問您的數據。你並不真正「從數組中檢索JSON對象」。也就是說,可能有庫似乎從JSON字符串中訪問數據(類似於我認爲的用於XML的Xpath),但實際上,只是解析字符串,然後得到一個JavaScript數組(或對象)。

+0

我的代碼就像這樣 \t \t var data ='$ {Data}'; \t \t alert(data); \t \t var a = JSON.parse(data); \t \t alert(a); (var i = 0; i

+0

這可能發生,因爲'JSON.parse'失敗。你在第一次警報中究竟得到了什麼? –