2013-08-07 152 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"')