在JavaScript 中使用換行符轉義JSON 字串
在JSON 值包含換行符的情況下,必須對它們進行轉義以獲得正確的JSON字串形成。
轉義換行符
要實現此目的,請在 JSON 物件上使用 JSON.stringify() 方法。隨後,利用replace()方法將n(換行符號)的所有實例替換為\n。
範例:
const jsonString = JSON.stringify({ value: 'This contains a newline\n' }); const escapedString = jsonString.replace(/\n/g, '\n');
轉義其他特殊字元
除了換行符之外,您可能還會會遇到需要對JSON 字串中的其他特殊字元進行轉義的情況。但是,沒有專門設計用於轉義所有此類字元的流行 JS 庫。
自訂轉義函數
要解決此問題,您可以建立一個名為escapeSpecialChars 的自訂轉義函數() 並將其附加到String 對象的原型:
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"); };
使用自訂函數的簡化程式碼
使用自訂函數後,您的程式碼將變成:
const jsonString = JSON.stringify({ value: 'This contains a newline\n' }); const escapedString = jsonString.escapeSpecialChars();
此技術可以轉義JSON 字串中的換行符和其他潛在特殊字元。
以上是如何使用 JavaScript 轉義 JSON 字串中的換行符號?的詳細內容。更多資訊請關注PHP中文網其他相關文章!