使用JSON.parse將json字符串轉(zhuǎn)換成json對象的時(shí)候會出錯(cuò)
在對數(shù)據(jù)庫取出來的數(shù)據(jù)(特別是描述信息)里面含有特殊字符的話,使用JSON.parse將json字符串轉(zhuǎn)換成json對象的時(shí)候會出錯(cuò),主要是雙引號,回車換行等影響明顯,左尖括號和右尖括號也會導(dǎo)致顯示問題,所以要在輸出到頁面進(jìn)行json對象轉(zhuǎn)換之前將一些特殊符合進(jìn)行編碼或轉(zhuǎn)義,下面展示的是C#代碼編碼和轉(zhuǎn)義幾個(gè)常用特殊字符。經(jīng)過筆者測試,將這些符號編碼和轉(zhuǎn)義之后,大部分json字符串都可以轉(zhuǎn)換成json對象了。如果遇到個(gè)別問題,應(yīng)朝著這個(gè)方向去查找問題。
theString = theString.Replace(">", ">");
theString = theString.Replace("<", "<");
theString = theString.Replace(" ", " ");
theString = theString.Replace("\"", """);
theString = theString.Replace("\'", "'");
theString = theString.Replace("\\", "\\\\");//對斜線的轉(zhuǎn)義
theString = theString.Replace("\n", "\\n");
theString = theString.Replace("\r", \\r);
注意:\r是回到行首,\n是新啟一行,這兩個(gè)一般同時(shí)出現(xiàn),應(yīng)該同時(shí)處理。
補(bǔ)充:文字中間的換行,空格在數(shù)據(jù)庫里面不以\r\n, ;等形式顯示出來(“本書”與“前80”之間換行,“由”與“曹雪芹”之間空格)
文字:

數(shù)據(jù)庫:

相關(guān)文章
Javascript前端下載后臺傳來的文件流代碼實(shí)例
這篇文章主要介紹了Javascript前端下載后臺傳來的文件流代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-08-08
Javascript 一些需要注意的細(xì)節(jié)(必看篇)
下面小編就為大家?guī)硪黄狫avascript 一些需要注意的細(xì)節(jié)(必看篇)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-07-07
javascript實(shí)現(xiàn)支持移動設(shè)備畫廊
本文通過純javascript技術(shù)實(shí)現(xiàn)支持移動設(shè)備畫廊,支持移動設(shè)備手勢操作,感興趣的朋友一起來學(xué)習(xí)吧2015-08-08
基于aotu.js實(shí)現(xiàn)微信自動添加通訊錄中的聯(lián)系人功能
這篇文章主要介紹了利用aotu.js實(shí)現(xiàn)微信自動添加通訊錄中的聯(lián)系人,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-05-05

