ホームページ >ウェブフロントエンド >jsチュートリアル >解析エラーを回避するために、JSON 文字列の改行を適切にエンコードするにはどうすればよいですか?

解析エラーを回避するために、JSON 文字列の改行を適切にエンコードするにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-01 04:56:17436ブラウズ

How to Properly Encode Newlines in JSON Strings to Avoid Parsing Errors?

JSON 文字列の改行のエンコード

JavaScript で JSON を処理する場合、解析プロセス中に改行が問題になる可能性があります。 JSON 文字列内で改行が適切にエンコードされていない場合、解析エラーが発生することがあります。

提供されたコード スニペットでは、改行文字 (n) が JSON 文字列内で正しく処理されないためにエラーが発生します。 eval('(' data ')') を使用して JSON を解析しようとすると、改行によって文字列が途中で終了され、「終了していない文字列リテラル」エラーが発生します。同様に、JSON.parse(data) を使用すると、予期しない改行トークンが原因で同様のエラーが発生します。

この問題を解決するには、改行文字を二重バックスラッシュ (\) を使用してエスケープする必要があります。修正された JSON 文字列は次のとおりです。

var data = '{"count" : 1, "stack" : "sometext\n\n"}';

をエスケープすることで、リテラルの改行文字ではなく文字列値の一部として解釈するように JSON パーサーに指示します。これにより、エラーを引き起こすことなく JSON を正常に解析できるようになります。

以上が解析エラーを回避するために、JSON 文字列の改行を適切にエンコードするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。