2011-07-30 71 views
-3

這是我的JSON字符串
"[{"/stab/cg/{4CD742B1-C1CA-4708-BE78-0FCA2EB01A86}/TOPS_00":[{"key":"C0.A8.01.06","value":"31"},{"key":"C0.A8.50.01","value":"25"},{"key":"C0.A8.50.81","value":"22"},{"key":"E0.00.00.FC","value":"19"},{"key":"C0.A8.01.FF","value":"18"},{"key":"C0.A8.50.FF","value":"18"},{"key":"4A.7D.EC.5F","value":"11"},{"key":"4A.7D.EC.4E","value":"11"},{"key":"SYS:GROUP_TOTALS","value":"158"}]}]"如何在JavaScript中解析JSON?

的eval( '(' + evt.data + ')'),我需要得到這樣

[「/刺/ CG /{4CD742B1-C1CA-4708-BE78-0FCA2EB01A86}/TOPS_00",[{"key":"C0.A8.01.06","value":"31"},{"key":"C0.A8.50.01 」, 「值」: 「25」},{ 「鍵」: 「C0.A8.50.81」, 「值」: 「22」},{ 「鍵」: 「E0.00.00.FC」, 「值」: 「19」},{ 「鍵」: 「C0.A8.01.FF」, 「值」: 「18」},{ 「鍵」: 「C0.A8.50.FF」, 「值」:「18 「},{」 鍵 「:」 4A.7D.EC.5F」, 「值」: 「11」},{ 「鍵」: 「4A.7D.EC.4E」, 「值」: 「11」} ,{「key」:「SYS:GROUP_TOTALS」,「value」:「158」}]]

我怎樣才能得到這個使用JavaScript?

+0

'document.write(jsonString)'?您的輸出與您的輸入相同! – Eric

回答

1

如果您可以使用jQuery,則可以使用$.parseJSON()方法。文檔here

對於原型,使用.evalJSON()方法。文檔here

+0

但我使用原型 – Dhinesh

+0

嘗試使用'evt.data.evalJSON()' [參考](http://www.prototypejs.org/learn/json) – fsong

1

請勿使用eval。在the JSON homepage末尾附近列出了用於解析JSON的庫集合,其中有一對JavaScript,包括json2.js這是常用選項。

操縱數據結構與解析JSON無關。如果你真的想改變它像當年那麼你想要的東西像(未經測試):

var newObj = []; 
for (keys) in myObj) { 
    newObj.push([key].concat(myObj[key]) 
} 
1

JSON.parse在大多數現代瀏覽器中本地實現,並且可以使用在JSON主頁上的墊片實現它昆汀表示。