javascript - 如何仅遍历我实际看到的字符串中的字符?

标签 javascript unicode surrogate-pairs astral-plane

通常我会使用类似str[i]的东西。

但是如果 str = "☀️🙌🏼" 呢?

str[i] 失败。 for (x of str) console.log(x) 也失败了。它总共打印出 4 个字符,尽管字符串中显然只有 2 个表情符号。

遍历我在字符串中看到的每个字符(我猜还有换行符)的最佳方法是什么?

理想的解决方案将返回一个由 2 个字符组成的数组:2 个表情符号,除此之外别无其他。 声称的重复项以及我发现的其他一些解决方案不符合此标准.

最佳答案

我最终在这个疯狂的 JS 库中找到了答案:

https://github.com/orling/grapheme-splitter

关于javascript - 如何仅遍历我实际看到的字符串中的字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36784946/

相关文章:

javascript - react native : How to reference current route in Navigator's navigationBar={}?

python - 如何修复重音字符串 [python]

c++ - 按字节读取 UTF-16 格式的文件到 wstring

text - 什么是所有日语空格字符?

c# - 什么是可以处理代理对的 String.IndexOf(string input) 的 Unicode 安全副本?

javascript - 为什么常量的属性或值不是常量

javascript - Lodash 或 JS GroupBy 和数组数组的计数

javascript - jQuery maphilight 动态改变颜色

powershell - 在Powershell中分割表情符号序列

javascript - Unicode 代理项对和 String.fromCodePoint() — JavaScript