当JSON字符串的任何字符串末尾都有\时,它会给我:


  Ext.JSON.decode():您正在尝试解码无效的JSON字符串


JSON解码错误:


  未捕获的Ext.JSON.decode():您正在尝试解码无效的JSON
  串:

[{"ID1":"1","ID2":"1","NAME":"Act\"},{"ID1":"3","ID2":"1","NAME":"Act\"},{"ID1":"4","ID2":"2","NAME":"act $#%^&&*"},{"ID1":"2","ID2":"2","NAME":"act $#%^&&*"}]



我如何避免上述错误?

最佳答案

那是无效的JSON,因为\字符转义了"标记,该标记将负责关闭字符串-这样,您的字符串将保持未关闭状态(即直到下一个"出现)。

因此,您的问题是反斜杠在字符串中具有特殊含义。如果要使用斜杠,请改用\\。 (请注意,这样做是对反斜杠字符本身进行了转义。)

即:

{"ID1":"1","ID2":"1","NAME":"Act\\"}

关于javascript - 当字符串末尾带有'\'时,Json String无法解码,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29513335/

10-12 07:26
查看更多