【JS 大码点字符长度】处理码点大于0xFFFF字符长度

【JS 大码点字符长度】处理码点大于0xFFFF字符长度处理串字符长度的场景比较常见 对于码点在 0x0000 0xFFFF 0 65535 范围的字符 直接使用字符属性 length 即可 一旦码点大于 0xFFFF js 会将这些字符当做双字符来处理

欢迎大家来到IT世界,在知识的湖畔探索吧!

处理串字符长度的场景比较常见,对于码点在0x0000-0xFFFF(0-65535)范围的字符,直接使用字符属性length即可,一旦码点大于0xFFFF, js会将这些字符当做双字符来处理。这是因为js是使用utf-16来存储和处理数据,码点大于0xFFFF之后字符属于双码元,会当做双字符来处理。因此我们在处理文本字符长度时需要小心处理。这里分享两个方法:

  1. Array.from
const a = '' Array.from(a).length

欢迎大家来到IT世界,在知识的湖畔探索吧!

  1. 扩展运算符 …
欢迎大家来到IT世界,在知识的湖畔探索吧!const a = '' [...a].length
【JS 大码点字符长度】处理码点大于0xFFFF字符长度

大码点字符两个方法

  • str.codePointAt() 获取字符码点
  • String.fromCodePoint(码点) 通过码点获取字符

常规字符的两个方法

  • str.charCodeAt() 获取字符码点
  • String.fromCharCode(码点) 获取字符
【JS 大码点字符长度】处理码点大于0xFFFF字符长度

PS: 如果业务场景中会出现大码点字符串(大于65535),一定要特定小心,最好使用上述两个方法转成数组之后在操作,不然容易会出现一些未知问题

【JS 大码点字符长度】处理码点大于0xFFFF字符长度

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/102988.html

(0)
上一篇 3天前
下一篇 3天前

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们YX

mu99908888

在线咨询: 微信交谈

邮件:itzsgw@126.com

工作时间:时刻准备着!

关注微信