2011-05-27 142 views
0

您好我有一個JSON字符串,它看起來像這樣:反序列化爲JavaScript的2D JSON字符串數組對象

{"2000":["1", "2", "3"],"2001":["1", "2", "3"],"2002":["1", "2", "3"]} 

上面的字符串來自於「後臺」和我的JavaScript函數接收JSON字符串作爲參數,這被稱爲backendData。

通過如下循環參數,給出以下結果。

for (key in backendData) { 
    alert(key); 
} 

三個alertboxes的價值觀:2000年,2001年和2002年

的問題是,我無法弄清楚如何訪問字符串數組爲每個「父」的元素。使用語法key[0]等給了我在字符串索引0的字符,在所有三種情況下都是「2」。

需要幫助。

/Michael

回答

2

該循環遍歷所有值。記住backendData只是一個javascript對象。

for (key in backendData) { 
    for (x in backendData[key]) 
    alert(backendData[key][x]); 
} 

或在您的示例數據這將工作

for (key in backendData) { 
    alert(backendData[key][0]; 
    alert(backendData[key][1]; 
    alert(backendData[key][2]; 
} 
+0

雖然內循環給我的索引位置,而不是實際值,所以我得到了0,1和2在內部循環警報框值。 – Michael 2011-05-27 10:38:43

+0

確定內部循環中的警報應該是backendData [key] [x]而不是x,因爲x只是索引。困惑我,但讓我找到解決方案。謝謝。 – Michael 2011-05-27 10:47:48

+0

@邁克爾 - 對不起 - 很好。 – Hogan 2011-05-27 11:11:32

2

我想你想

backendData[key] 

,因爲你要在backendData地圖中查找一個映射。 key[0]索引key(作爲字符數組),這不是你發現之後的東西。

+0

偉大的我給我1步進一步返回鍵的字符串爲1,2,3如何解析到數組? – Michael 2011-05-27 10:37:34

相關問題