最近碰到了一个需要把数组和字母相互转换的场景。
在JS中可以通过charCodeAt
把字母转换成ASCII码
,也可以通过fromCharCode
把数字转换成字母
1 | 'A'.charCodeAt() |
charCodeAt
charCodeAt()
方法返回 0 到 65535 之间的整数,表示给定索引处的 UTF-16 代码单元
- 语法:
str.charCodeAt(index)
- 参数
index
: 一个大于等于 0,小于字符串长度的整数。如果不是一个数值,则默认为 0。 - 返回值: 指定
index
处字符的UTF-16
代码单元值的一个数字;如果index
超出范围,charCodeAt()
返回NaN
。
举个例子1
2
3
4
5'今天你吃了吗'.charCodeAt(1) 返回'天'的UTF-16 代码单元
# 22825
String.fromCharCode(22825)
# '天'
charAt
charAt
方法则是返回一个字符串指定位置的字符
1 | '一个字符串中返回指定的字符'.charAt(3) |
fromCharCode
静态 String.fromCharCode()
方法返回由指定的 UTF-16
代码单元序列创建的字符串
这个fromCharCode
方法可以传入多个参数1
2String.fromCharCode(65, 66)
# 'AB'