一、普通字符转二进制:
var code = "a"
var rs = code.charCodeAt() //获得"a"在ASCII表中对应的十进制整数,
console.log(rs)//97
二、二进制转十六进制
var code = 1100001
var rs1 = parseInt(code,2).toString(16) //获得97对应的十六进制整数
console.log(rs1)//61
补充:普通字符转十六进制连写consle.log("a".charCodeAt().toString(16))
三、十六进制转二进制
var num = 61
var val = parseInt(num,16)//第二参数告诉函数,num是16进制整数,parseInt会帮我们解析成对应的十进制整数
console.log(val) //97
var res = val.toString(2)//将十进制转为二进制
console.log(res)//1100001
四、二进制转普通字符
var num = 97
var val1 = String.fromCharCode(num)//获得十进制整数97在ASCII表中对应的字符
console.log(val1)//a
补充:十六进制转普通字符连写console.log(String.fromCharCode(parseInt(61,16)))
注意:字符和数字要区分清楚,数字之间进制转换请不要使用fromCharCode()和charCodeAt(),这俩是字符与数字间用的
附:
1、ASCII码对照表
2、字符与十六进制转换校验工具
3、parseInt参数详解
4、formCharCode()使用详解
5、汉字转换demo
function chToHex(){ //汉字字符转16进制
var ch = '周六'
var arr = ch.split('')
var res = ''
for(var i=0;i<arr.length;i++){
res += arr[i].charCodeAt().toString(16)
if(i!=arr.length-1){res +=','}
}
console.log(res) // 5468,516d
}
function hexToCh(){ //16进制转汉字
var ch = '5468,516d'
var arr = ch.split(',')
var res=''
for(var i=0;i<arr.length;i++){
res += String.fromCharCode(parseInt(arr[i],16))
}
console.log(res) // 周六
}
chToHex()
hexToCh()