gpt4 book ai didi

javascript - 解析带引号的简单 json 时出现语法错误?

转载 作者:行者123 更新时间:2023-11-29 18:32:13 25 4
gpt4 key购买 nike

我正在尝试使用 Json2.js 在 JavaScript 中解析包含双引号字符串的 Json,如下所示。

<script src="Scripts/json2.js" type="text/javascript"></script>
<script src="Scripts/jquery-1.4.4.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(function () {
try {
var inv = JSON.parse('{"Items":[{"Quantity":1,"Description":"Width : 16\" Asd","Price":49.17,"IsEditable":false}],"Vat":20.00,"Delivery":0}');
console.log(inv.Vat);
}
catch (err) {
console.log(err);
}
});

</script>

但是我在解析时遇到语法错误。我在这里遗漏了什么吗?

最佳答案

"Width : 16\" 中的斜杠字符被视为转义 JavaScript 字符串中的 " 字符。由于字符串由单引号分隔,因此使得没有区别,与 "Width : 16" 相同。

为了在 JavaScript 字符串文字中使用 JSON 转义引号字符,您需要对转义进行转义。

"Width : 16\\"

您可能最好只使用 JS 对象文字而不是立即解析的 JSON 字符串:

var inv = {"Items":[{"Quantity":1,"Description":"Width : 16\" Asd","Price":49.17,"IsEditable":false}],"Vat":20.00,"Delivery":0};

关于javascript - 解析带引号的简单 json 时出现语法错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6911559/

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