1
0
mirror of https://github.com/ruanyf/es6tutorial.git synced 2025-05-24 18:32:22 +00:00

修改字符串部分

This commit is contained in:
ruanyf 2014-09-12 10:20:15 +08:00
parent eea5149133
commit fc8815580a

View File

@ -18,7 +18,7 @@ s.charCodeAt(1) // 57271
```
上面代码中汉字“𠮷”的Unicode编号是0x20BB7需要4个字节储存。对于这种4个字节的字符JavaScript不能正确处理字符串长度会误判为2而且charAt方法无法读取字符charCodeAt方法只能分别返回前两个字节和后两个字节的值。
上面代码中汉字“𠮷”的Unicode编号是0x20BB7UTF-16编码为0xD842 0xDFB7十进制为55362 57271需要4个字节储存。对于这种4个字节的字符JavaScript不能正确处理字符串长度会误判为2而且charAt方法无法读取字符charCodeAt方法只能分别返回前两个字节和后两个字节的值。
ES6提供了codePointAt方法能够正确处理4个字节储存的字符返回一个字符的Unicode编号。