當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
JSON.parse 解析json字符串时,遇换行符报错
生活随笔
收集整理的這篇文章主要介紹了
JSON.parse 解析json字符串时,遇换行符报错
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Json字符串轉換成Json對象時候,有兩種方式:
假設d是json字符串:
1,eval('(' + d + ')')。
2,JSON.parse(d);
但是以上方式有隱患,如果Json字符串有換行的話,這樣轉換就會報錯。
假如有這樣一個字符串:
var json='{"CityName":"西安","CityOrder":"物料::WAA010001\n物料名稱::軸承\n規格型號::HRB1209\n供應商::東莞市耀光化工貿易有限公司\n采購員::\n請購部門:: \n批號::JH201803250001"}';輸出是這樣:
轉換的時候報錯:
錯誤原因:JSON.parse轉json字符串時遇到一些特殊字符需要先轉義。
用str.replace(/\n/g,"\\n")轉義,'\\'轉成單個'\','\\n'轉成'\n',最后轉成'\\n'這樣就可以用parse轉成對象時變為'\n',取出的字符串設置到html文本中\n被解析為換行。
可以這樣轉義:.replace(/\n/g,"\\n").replace(/\r/g,"\\r")。
如下:
var jsonObj=JSON.parse(json.replace(/\n/g,"\\n").replace(/\r/g,"\\r"));總結
以上是生活随笔為你收集整理的JSON.parse 解析json字符串时,遇换行符报错的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c语言中如何进行开方和求一个数的几次方;
- 下一篇: Spring初识