當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
【ES10(2019)】JSON扩展 superset / stringify() 增强能力
生活随笔
收集整理的這篇文章主要介紹了
【ES10(2019)】JSON扩展 superset / stringify() 增强能力
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
JSON superset
什么是 JSON 超集?,簡而言之就是讓 ECMAScript 兼容所有JSON支持的文本。 ECMAScript 曾在標準 JSON.parse 部分闡明 JSON 確為其一個子集,但由于 JSON 內容可以正常包含 U+2028行分隔符 與 U+2029段分隔符,而ECMAScript 卻不行。
JSON.stringify() 增強能力
JSON.stringify在 ES10 修復了對于一些超出范圍的 Unicode展示錯誤的問題。因為 JSON 都是被編碼成 UTF-8,所以遇到 0xD800–0xDFFF 之內的字符會因為無法編碼成 UTF-8 進而導致顯示錯誤。在 ES10 它會用轉義字符的方式來處理這部分字符而非編碼的方式,這樣就會正常顯示了。
// \uD83D\uDE0E emoji 多字節的一個字符 console.log(JSON.stringify('\uD83D\uDE0E')) // "😎"// 如果我們只去其中的一部分 \uD83D 這其實是個無效的字符串 // 之前的版本 ,這些字符將替換為特殊字符,而現在將未配對的代理代碼點表示為JSON轉義序列 console.log(JSON.stringify('\uD83D')) // "\ud83d"JSON支持代碼單元轉義序列(例如\uD800),但不支持代碼點轉義序列(例如\u{D800})。
總結
以上是生活随笔為你收集整理的【ES10(2019)】JSON扩展 superset / stringify() 增强能力的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux 远程桌面配置,linux 远
- 下一篇: java生成j动态页面_zk动态产生多个