Javascript 如何使用特殊字符计算文本长度?

Javascript 如何使用特殊字符计算文本长度?,javascript,string-length,Javascript,String Length,例如,const words='a̋b̋',单词的长度为4。但我们预计“实际”长度为2 或者,是否有任何安全的方法来检查上述单词中的所有字符?JavaScript中没有任何东西可以帮助您将这些组合标记与其他字符区分开来。当然,您可以使用以下引用信息构建一些内容::-) …但至少有一个人似乎已经为您这样做了: 进入grapheme-splitter.js库。它可以用来正确地将JavaScript字符串拆分为人类用户称之为单独的字母(或Unicode术语中的“扩展图形集簇”),而不管它们的内部表示是

例如,
const words='a̋b̋'
,单词的
长度
4
。但我们预计“实际”长度为
2


或者,是否有任何安全的方法来检查上述
单词中的所有字符?

JavaScript中没有任何东西可以帮助您将这些组合标记与其他字符区分开来。当然,您可以使用以下引用信息构建一些内容::-)

…但至少有一个人似乎已经为您这样做了:

进入grapheme-splitter.js库。它可以用来正确地将JavaScript字符串拆分为人类用户称之为单独的字母(或Unicode术语中的“扩展图形集簇”),而不管它们的内部表示是什么。它是Unicode UAX-29标准的实现


这将导致
图形中出现两个条目,即
“a̋”
“b̋”
。(无法执行实时示例,不允许指向github原始页面的实时链接。)

查看一下,谢谢阅读
const words = 'a̋b̋';
const splitter = new GraphemeSplitter();
const graphemes = splitter.splitGraphemes(words);
console.log(graphemes);