格式良好的 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 開發人員,這讓您少了一項需要擔心的問題。結合 JSON ⊂ ECMAScript,它能安全地將 JSON 字串化的資料嵌入為 JavaScript 程式中的文字,並將產生的程式碼寫入任何相容 Unicode 的編碼(例如 UTF-8)中。這對於 元程式設計使用案例 非常有用。

功能支援 #