使用 JavaScript 轉義 JSON 字串中的換行符
JSON 字串通常需要包含換行符號以提高可讀性。但是,這些字元在直接以 JSON 格式傳輸時可能會導致問題。為了解決這個問題,必須在發送字串之前對它們進行轉義。
選項1:使用JSON.stringify() 和.replace()
首先,將使用JSON.stringify() 將JSON 物件轉換為字串:
var json = JSON.stringify({"value": "This \nis a test"});
然後,使用.replace() 對換行符號進行轉義:
var escapedJson = json.replace(/\\n/g, "\\\\n");
This將所有“\n”實例替換為“\n”,成功轉義換行符。
選項2:使用可重用函數轉義特殊字符
轉義所有特殊字符,包括換行符,您都可以創建一個可重用的函數:
String.prototype.escapeSpecialChars = function() {
return this.replace(/\\n/g, "\\\\n")
.replace(/\\'/g, "\\\\'")
.replace(/\\"/g, '\\\\"')
.replace(/\\&/g, "\\\\&")
.replace(/\\r/g, "\\\\r")
.replace(/\\t/g, "\\\\t")
.replace(/\\b/g, "\\\\b")
.replace(/\\f/g, "\\\\f");
};
此函數可以套用於任何需要轉義的字串:
var json = JSON.stringify({"value": "This \nis a test"});
var escapedJson = json.escapeSpecialChars();
這兩個選項都能有效轉義JSON字串中的換行符,保證傳輸JSON資料時的相容性。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3