適切に形成された JSON.stringify

公開日 · タグ: ECMAScript ES2019

入力に孤立サロゲートが含まれる場合、JSON.stringify で以前は不正な形式の Unicode ストリングを返すように指定されていました。

JSON.stringify('\uD800');
// → '"�"'

「適切に形成された JSON.stringify」提案では、孤立サロゲートのエスケープ シーケンスを JSON.stringify で出力するように変更され、それにより出力が有効な Unicode(UTF-8 で表現可能)になります。

JSON.stringify('\uD800');
// → '"\\ud800"'

JSON.parse(stringified) は以前と同様の結果を生成することに注意してください。

この機能は JavaScript にとって長らく待たれていた小さな修正です。これは JavaScript 開発者としての懸念事項を 1 つ軽減します。JSON ⊂ ECMAScript と組み合わせると、JSON 文字列化されたデータをリテラルとして JavaScript プログラムに安全に埋め込んだり、生成されたコードを Unicode 互換のエンコーディング(例: UTF-8)でディスクに書き込んだりできます。これは、メタプログラミングの使用例にとって非常に役立ちます。

機能のサポート #