JS字符各进制之间的转换

做算法机试题的过程中经常会遇到字符的比较,字符转为二进制、十六进制等的转化。时常会忘记具体的实现方法,现做一下总结帮助记忆

1.ASCII码和字符的转化

使用 charCodeAtfromCharCode

var str = "A";
var code = str.charCodeAt(); // charCodeAt获取字符对应的ASCII码
var str2 = String.fromCharCode(code); // String的fromCharCode方法根据ASCII获取字符

2.十进制转二进制

使用 toString(2)

var a = 5
a.toString(2)  // '101'

八进制,十六进制同理,只需要将参数2改成8、16即可

var a = 64
a.toString(8)  // '100'
var b = 15
b.toString(16) // 'f'

注意这里前面的数是Number类型,转化为二进制后为String类型


3.二进制转十进制

使用 parseInt(str, 2)

var a = '1100'
parseInt(a, 2)  // 12

八进制,十六进制转10进制也同理,只需要将第二个参数2改为 8、16即可

var a = '10' // 八进制的10表示十进制的8
parseInt(a, 8) // 8

var b = 'f' // 十六进制的f表示十进制的15
parseInt(b, 16)  // 15

注意这里前面的数是String类型,转化为十进制后为Number类型

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值