2014-10-20 192 views
0

我試圖解析此JSON字符串:解析JSON字符串數組

var string = '{"DataSerialized":{"DocumentElement":{"NAME_LIST":"FIELD_1":"VALUE_1","FIELD_2":"VALUE2","FIELD_3":"VALUE_3"}}}}';

如何一個JSON對象如何:

{ 
    "DataSerialized":{ 
     "DocumentElement":{ 
      "NAME_LIST":{ 
       "FIELD_1":"VALUE_1", 
       "FIELD_2":"VALUE2", 
       "FIELD_3":"VALUE_3" 
      } 
     } 
    } 
} 

對於這一點,我試圖與jQuery.parseJSON(string)但結果是錯誤的:

SyntaxError: JSON.parse: expected ',' or '}' after property value in object at line 1 column 60 of the JSON data

我認爲這是帶引號的問題,但我不知道什麼事先不對正是

感謝

SOLUTION: {NAME_LIST

var string = '{"DataSerialized":{"DocumentElement":{"NAME_LIST":{"FIELD_1":"VALUE_1","FIELD_2":"VALUE2","FIELD_3":"VALUE_3"}}}}';

+2

使用JSON做不能用單引號。 http://jsonlint.com/ – epascarello 2014-10-20 14:38:31

+1

你的JSON無效,你有一個額外的大括號。 – inorganik 2014-10-20 14:39:13

回答

4

你有一人失蹤在NAME_LIST之後輸入{,您應該使用"而不是'

+2

實際上,在NAME_LIST之後有一個缺少''''。更改後仍然無效。 – vesse 2014-10-20 14:44:20

+0

是的,這是問題,''在'NAME_LIST'之後。非常感謝 – oscarvady 2014-10-20 14:49:00

+0

感謝您的建議vesse – DrRoach 2014-10-20 14:49:48

0

此字符串:

var string = "{'DataSerialized':{'DocumentElement': 
    {'NAME_LIST':'FIELD_1':'VALUE_1','FIELD_2':'VALUE2','FIELD_3':'VALUE_3'}}}}"; 

有一個太多的右花括號。

0

當您使用$.parseJSON你應該使用「,而不是」

如果你有JSON格式的任何問題

。嘗試jsonformatter

+0

即使它不是有效的,嘗試使用Python json.load(「hisjson」)它不起作用,Json使用雙引號! – 2014-10-20 14:42:33

0

你有一個錯誤的JSON格式,你錯過了一個{名單後,有正確例如

var string = '{"DataSerialized":{"DocumentElement":{"NAME_LIST":{"FIELD_1":"VALUE_1","FIELD_2":"VALUE2","FIELD_3":"VALUE_3"}}}}'; 
JSON.parse(string); 

嘗試瀏覽器,開發者控制檯上運行它,然後你會看到正確的對象