Javascript + Emoji 奇怪的东西

标签 javascript emoji

我正在尝试对一些嵌入了表情符号的文本执行一些字符串方法。

但是,这是我见过的一件非常奇怪的事情:

"🌑".length == 2

我只是想知道它是如何决定对我来说显示为 1 个字符的,实际上是 2 个。

最佳答案

In Javascript, a string is a sequence of 16-bit code points. Since emoji > are encoded above the BMP, it means that they are represented by a pair > of code points, also known as a surrogate pair. So for instance, 0x1F600, which is 😀, is represented by:

"\uD83D\uDE00"

如果您愿意进一步了解这一点,可以阅读这篇文章:Emojis in Javascript - Parsing emoji in Javascript is… not easy.

关于Javascript + Emoji 奇怪的东西,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21802329/

相关文章:

javascript - XML 可从 URL 行访问,但不能从脚本访问

javascript - JS 配对游戏随机化除最后一张牌以外的所有牌

html - 带有 WordPress 的表情符号和浏览器

javascript - Firefox Addon addEventListener 未捕获事件

javascript - 用 Shiny 的用户输入触发鼠标单击事件

c++ - 我可以#define 多深?

javascript - Twemoji 解析字符串并将表情符号更改为等效代码

php - 使用 PHP 解析 unicode 表情符号文本文件

c++ - 如何在 C++ 中通过表情符号分割字符串

javascript - 在图像标签 IE11 上添加自定义属性时无法发布表单?