JS字符串与二进制的转化
JS字符串与二进制的相互转化
1
2
3
4
5
|
//字符串转ascii码,用charCodeAt(); //ascii码转字符串,用fromCharCode(); var str = "A" ; var code = str.charCodeAt(); var str2 = String.fromCharCode(code); |
十进制转二进制
1
2
3
|
var a = "i" ; console.log(a.charCodeAt()); //105 console.log(a.charCodeAt().toString(2)); //1101001 |
1
2
3
|
var a = "我" ; console.log(a.charCodeAt()); //25105 console.log(a.charCodeAt().toString(2)); //110001000010001 |
1
2
3
4
|
var a = "我们" ; console.log(a.length); //2 var list = a.split( "" ); console.log(list.length); //2<br>console.log(a.charCodeAt().toString(2)); //110001000010001 100111011101100 |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
//将字符串转换成二进制形式,中间用空格隔开 function strToBinary(str){ var result = []; var list = str.split( "" ); for ( var i=0;i<list.length;i++){ if (i != 0){ result.push( " " ); } var item = list[i]; var binaryStr = item.charCodeAt().toString(2); result.push(binartStr); } return result.join( "" ); } console.log(strToBinary( "我们" )); //110001000010001 100111011101100 console.log(strToBinary( "@%$+" )); //1000000 100101 100100 101011 //将二进制字符串转换成Unicode字符串 function binaryToStr(str){ var result = []; var list = str.split( " " ); for ( var i=0;i<list.length;i++){ var item = list[i]; var asciiCode = parseInt(item,2); var charValue = String.fromCharCode(asciiCode); result.push(charValue); } return result.join( "" ); } console.log(binaryToStr( "110001000010001 100111011101100" )); //我们 console.log(binaryToStr( "1000000 100101 100100 101011" )); //@%$+ |