2013-08-07 127 views

回答

10

你實際上是通過裸字string到這當然不是有效的JSON的功能。 。要真正通過在"string「你必須小心你的JavaScript

試試這個:

JSON.parse("\"string\"") 

額外對引號必須轉義,使他們成爲您傳遞價值的一部分在該功能

+0

爲什麼選擇投票?這是正確的答案! –

+0

我不知道,但我很能完全解釋的第一個給予好評。 – Potatoswatter

+0

我沒有downvote,但你可以參考實際規格的證明。 JSONString是有效的,可以在[ECMA標準](http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf)中的「15.12.1.2 JSON語法語法」 – eis

0

語法錯誤告訴你:「S」是一個意外標記字符串是一個有效的JSON值,但作爲規範描述它必須用雙引號括起來

string 
    "" 
    " chars " 
0。

一般情況下,你可以使用JSON.stringify(myValue)檢查此類值的正確格式的JSON字符串會是什麼。

0

由於JSON中的字符串必須用引號括起來,並且在JSON.parse("string")調用中,JSON.parse從不會「看到」任何引號作爲要求解析的文本的一部分。雙引號,我們看到被用來形成一個合法的字符串傳遞 - 他們不是文本我們正在傳遞的一部分

此調用工作:

JSON.parse('"s"')