【前端開發】JSON.parse 解析json字符串時,遇換行符報錯


今天遇到后台返回的json字符串轉對象時報錯了,發現有個textarea提交的字段里有換行符。

錯誤原因:JSON.parse轉json字符串時遇到一些特殊字符需要先轉義,如圖所示

可以用str.replace(/\n/g,"\\\\n")轉義,'\\'轉成單個'\','\\n'轉成'\n',最后轉成'\\n'這樣就可以用parse轉成對象時變為'\n',取出的字符串設置到html文本中\n被解析為換行。

測試:

1.var kks="{"id":2,"name":null}"的reviver遍歷前面兩個是json字符串中的鍵值,空值暫時不知道是什么(原型Object?)。

2.json字符串有值為undefined解析會報錯

2.JSON.stringify會忽略值為undefined的對象

語法規定:值undefined不包含在可以解析的范圍內,所以會報錯,哈哈。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM