JSON解析转义字符串

3
为什么 JSON.parse 不能解析这个:
{
    "things1": "[{\"stuff1\":\"data1\"}]"
}

当我输入这个时:
JSON.parse('{ "things1": "[{\"stuff1\":\"data1\"}]" }')

我得到:
Uncaught SyntaxError: Unexpected token s

看起来"[{\"stuff1\":\"data1\"}]"已经被正确转义了。


嗯,这不是一个有效的 JSON。things1 属性指向一个以 [{ 开头并中断的字符串。你从哪里得到它的? - undefined
1个回答

3

您遇到了转义问题,具体原因是由于您嵌套了字符串。您需要使用\\"进行双重转义\"

编辑:添加一个示例。

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


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接