2015-04-06 111 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\\"}]" }');