fastjson 返回json字符串,JSON.parse 报错

这是由于转义字符引起的如 : \ , fastjson 处理后是双反斜杠:\\ ,而 JSON.parse 解析时需要4个反斜杠 ,即 js解析json 反斜杠时,需要 4个 解成 1 个

 

解决方法: 后台返回前,把处理后的json字符串再处理,所有双反斜杠 替换成 4个 :

JSON.toJSONString(list).replaceAll("\\\\", "\\\\\\\\");

    或 前端接收后处理成4个反斜杠 

 

对于其他的其他的特殊字符 
1.双引号("),如果正确出现双引号应为\\\" 
2.\n,如想想出现正确的换行需要json字符串中是\\n,其实是先对\n中的\转义,n变成了普通字符,在解析为js对象的时候n与之前的\(只有一个\了)被解释为换行。如下的两个与此类似。 
3.\r,\\r 
4.\t,\\t

转载于:https://www.cnblogs.com/qingyibusi/p/7463208.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值