JS字符各进制之间的转换
程序员文章站
2024-03-18 18:50:40
...
做算法机试题的过程中经常会遇到字符的比较,字符转为二进制、十六进制等的转化。时常会忘记具体的实现方法,现做一下总结帮助记忆
1.ASCII码和字符的转化
使用 charCodeAt
和fromCharCode
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类型