如何避免 JavaScript 将大于\uFFFF的 Unicode 字符,算作两个字符的 bug。

  • 1、Array.from()
    将字符串转为数组,然后返回字符串的长度。因为它能正确处理各种 Unicode 字符;

  • 2、扩展运算符

function length(str) {
  return [...str].length;
}

length('x\uD83D\uDE80y') // 3
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • ES6 数组拓展 ES6为Array新增的扩展 ...**(拓展运算符)---三个点将一个数组转为用逗号分隔的参数...
    动感超逗阅读 3,853评论 0 1
  • 扩展运算符 含义 扩展运算符(spread)是三个点(...)。它好比 rest 参数的逆运算,将一个数组转为用逗...
    小挠许阅读 1,365评论 0 0
  • 三,字符串扩展 3.1 Unicode表示法 ES6 做出了改进,只要将码点放入大括号,就能正确解读该字符。有了这...
    eastbaby阅读 5,464评论 0 8
  • 概要 64学时 3.5学分 章节安排 电子商务网站概况 HTML5+CSS3 JavaScript Node 电子...
    阿啊阿吖丁阅读 13,130评论 0 3
  • 扩展运算符 含义 扩展运算符是三个点(...)。它好比rest参数的逆运算,将一个数组转为用逗号分隔的参数序列。 ...
    oWSQo阅读 2,325评论 0 0