2015-04-06 112 views
0

爲什麼這麼想的JSON.parse解析此:JSON解析轉義字符串

{ 
    "things1": "[{\"stuff1\":\"data1\"}]" 
} 

當我進入這個

JSON.parse('{ "things1": "[{\"stuff1\":\"data1\"}]" }') 

我得到:

Uncaught SyntaxError: Unexpected token s 

看來"[{\"stuff1\":\"data1\"}]"是正確的逃過一劫。

+0

那麼,這不是一個有效的json。 'things1'屬性指向一個以'[{'開始並且然後中斷的字符串。你從哪裏得到它的? – zerkms 2015-04-06 01:41:01

回答

1

您正在轉義問題,特別是因爲您有嵌套字符串。您需要使用\\"來雙重轉義\"位。

編輯:意思是添加一個樣本。

JSON.parse('{ "things1": "[{\\"stuff1\\":\\"data1\\"}]" }');