gpt4 book ai didi

javascript - 为什么我会收到意外的 token \

转载 作者:行者123 更新时间:2023-11-28 20:19:02 25 4
gpt4 key购买 nike

k ="[{\"id\": 1, \"latitude\": \"52.511467\", \"longitude\": \"13.447179\", \"bearing\": \"0.000000\", \"speed\": \"0.000000\", \"device_status\": 0, \"timestamp\": \"2013-08-18 00:00:00\"}, {\"id\": 3, \"latitude\": \"53.511467\", \"longitude\": \"14.447179\", \"bearing\": \"1.000000\", \"speed\": \"1.000000\", \"device_status\": 2, \"timestamp\": \"2013-08-18 00:00:00\"}, {\"id\": 4, \"latitude\": \"54.511467\", \"longitude\": \"15.447179\", \"bearing\": \"1.000000\", \"speed\": \"1.000000\", \"device_status\": 2, \"timestamp\": \"2013-08-18 00:00:00\"}, {\"id\": 5, \"latitude\": \"33.511467\", \"longitude\": \"72.447179\", \"bearing\": \"1.000000\", \"speed\": \"1.000000\", \"device_status\": 1, \"timestamp\": \"2013-08-18 00:00:00\"}]"

R = JSON.parse(k)

语法错误:意外的标记\

m =JSON.parse("[{\"id\": 2, \"da\": \"1\"}]")

工作正常,没有错误

最佳答案

这是因为从服务器返回时,结果是以字符串形式存储的,所以字符串本身在每个"之前都包含\转义字符。 isint 可有效转义 JSON 字符串中的 " 字符。

这就像做:

var json = '{\\"test\\":\\"test\\"}';
json //"{\"test\":\"test\"}"
JSON.parse(json); //SyntaxError: Unexpected token \

但是,当您将该字符串直接放入控制台时,\ 字符将发挥其转义作用,并且不会成为末尾实际字符串的一部分。基本上,服务器端生成的 JSON 字符串不应转义 " 字符。

您还可以在客户端替换无效的 ecape 序列,但我不建议这样做:

JSON.parse(json.replace(/\\"/g, '"'));

关于javascript - 为什么我会收到意外的 token \,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18677597/

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