gpt4 book ai didi

javascript - JSON Lint 说它是有效的但是 JSON.parse 抛出错误

转载 作者:数据小太阳 更新时间:2023-10-29 05:04:04 25 4
gpt4 key购买 nike

我有一个简单的 JSON,我需要将其解析为对象。奇怪的是它不起作用,即使我将我的 JSON 字符串复制并粘贴到 JSONLint ( http://jsonlint.com/ ) 它会显示它是有效的。

var string = '{"token":"9eebcdc435686459c0e0faac854997f3","email":"201403050007950","id":"13","updated_at":"2014-03-05 10:34:51","messageguides":"[{\"name\":\"Un-named Messaging Guide 1\",\"pages\":[\"sustainabilitydirectors\",\"marketingnbusinessdevelopmentdirectors\"],\"date\":1394015692958}]"}';

var obj = JSON.parse(string); // Unexpected token n

console.log(obj);

最佳答案

当您解析原始 JSON 时,数据中的 \ 字符被视为 JSON 转义字符。

当您将该 JSON 嵌入到 JavaScript 字符串中时,它们将被视为 JavaScript 转义字符,而不是 JSON 转义字符。

当您将 JSON 表示为 JavaScript 字符串时,您需要将它们转义为 \\


也就是说,通常最好将 JSON 作为对象(或数组)文字放入 JavaScript,而不是将其嵌入到字符串中,然后将其作为单独的步骤进行解析。

var obj = {"token":"9eebcdc435686459c0e0faac854997f3","email":"201403050007950","id":"13","updated_at":"2014-03-05 10:34:51","messageguides":"[{\"name\":\"Un-named Messaging Guide 1\",\"pages\":[\"sustainabilitydirectors\",\"marketingnbusinessdevelopmentdirectors\"],\"date\":1394015692958}]"};

关于javascript - JSON Lint 说它是有效的但是 JSON.parse 抛出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22200588/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com