1. 程式人生 > >fastjson 返回json字符串,JSON.parse 報錯

fastjson 返回json字符串,JSON.parse 報錯

斜杠 如果 對象 反斜杠 ace 想想 成了 替換 \n

這是由於轉義字符引起的如 : \ , 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

fastjson 返回json字符串,JSON.parse 報錯