JavaScript String codePointAt() 方法
定义和用法
codePointAt()
方法返回字符串中索引(位置)处的 Unicode 值。
第一个位置的索引是 0,第二个是 1,....
另请参阅:
Unicode
有关 Unicode 字符集的更多信息,请访问我们的 Unicode 参考手册。
实例
例子 1
获取字符串中第一个位置的码位(code point)值:
let text = "HELLO WORLD"; let code = text.codePointAt(0);
例子 2
获取第二个位置的码位值:
let text = "HELLO WORLD"; let code = text.codePointAt(1);
例子 3
获取最后位置的码位值:
let text = "HELLO WORLD"; let code = text.charCodeAt(text.length-1);
例子 4
获取第 15 位的码位值:
let text = "HELLO WORLD"; let code = text.charCodeAt(15);
charCodeAt() 和 codePointAt() 的区别
charCodeAt()
是 UTF-16,codePointAt()
是 Unicode。
charCodeAt()
返回 0 到 65535 之间的数字。
两种方法都返回表示字符的 UTF-16 代码的整数,但只有 codePointAt()
可以返回大于 0xFFFF (65535) 的 Unicode 值的完整值。
有关 Unicode 字符集的更多信息,请访问我们的 Unicode 参考手册。
语法
string.codePointAt(index)
参数
参数 | 描述 |
---|---|
index |
可选。字符串中的索引(位置)。 默认值 = 0。 |
返回值
类型 | 描述 |
---|---|
数字 | 指定索引处的码位值(code point value)。 |
undefined | 如果索引无效。 |
浏览器支持
codePointAt()
是 ECMAScript6 (ES6) 特性。
所有现代浏览器都支持 ES6 (JavaScript 2015):
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome | Edge | Firefox | Safari | Opera |
支持 | 支持 | 支持 | 支持 | 支持 |
Internet Explorer 11(或更早版本)不支持 codePointAt()
。