字符串转二进制

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
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"
));
//@%$+

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容