JavaScript を使用した JSON 文字列の改行文字のエスケープ
JSON 文字列は、多くの場合、読みやすくするために改行文字を含める必要があります。ただし、これらの文字は、JSON 形式で直接送信される場合に問題を引き起こす可能性があります。これに対処するには、文字列を送信する前にそれらをエスケープすることが重要です。
オプション 1: JSON.stringify() と .replace() を使用する
まず、 JSON.stringify() を使用して JSON オブジェクトを文字列に変換します:
var json = JSON.stringify({"value": "This \nis a test"});
Then 、.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