JSON 中转义的 unicode 字符的含义

问题描述 投票:0回答:1

在 JSON 中,可以使用

\uXXXX
表示法对 Unicode 字符进行转义。我假设
XXXX
显然指的是十六进制的 Unicode 代码点。

但是由于只有 4 位数字,这是否意味着无法转义

> 0xFFFF
的代码点?

或者

\uXXXX
实际上并不编码抽象代码点,而是实际上编码UTF-16-BE字节单位?

javascript json unicode
1个回答
3
投票

更新2024年4月28日

一段时间以来,我们可以使用

\u{X}
\u{XXXXXX}
等序列来表示代码点,包括大于 0xFFFF 的代码点。

var s = '\u{2f804}';
alert(s + '::' + s.length); // 你::2

应该是

\uXXXX
,是的,可以按照您提到的方式使用高代理和低代理来表示大于0xFFFF的字符。

var s = '\uD87E\uDC04';
alert(s + '::' + s.length); // 你::2
© www.soinside.com 2019 - 2024. All rights reserved.