我正在尝试使用一些嵌入了Emoji的文本来做一些字符串方法。
然而,这是我看到的一件非常奇怪的事情:
"".length == 2
我只是想知道它如何决定出现在我身上的1个角色,实际上是2个。
答案 0 :(得分:0)
在Javascript中,字符串是一系列16位代码点。因为表情符号>在BMP之上编码,这意味着它们由一对>表示。代码点,也称为代理对。 因此,例如,0x1F600,表示为:
“\ uD83D \ uDE00”
如果您愿意继续这样做,可以阅读这篇文章:Emojis in Javascript - Parsing emoji in Javascript is… not easy.