//字符转二进制
function str2binary(str){
if(!str) return;
if(typeof str !== 'string') return;
const zero = '00000000';
let bi = '';
for(let i of str){
let num = zero + i.charCodeAt().toString(2); //获取二进制
bi += num.slice(-8); //取8位二进制
}
return bi;
}
//二进制转字符
function binary2str(bi){
const len = bi.length;
let str = '';
for(let i = 0; i < len; i+=8){
str += String.fromCharCode(parseInt(bi.substr(i, 8), 2))
}
return str;
}
//二进制转base64
function binary2base64(bi){
let str = '';
for(let i = 0, len = bi.length; i < len; i++){
str += String.fromCharCode(bi[i]);
}
return btoa(str);
}
//base64转二进制
function base64ToBinary(base){
var str = atob(base), len = str.length, arr = new Uint8Array(len);
while(len--){
arr[len] = str.charCodeAt(len);
}
// return arr.join('');
return arr; // 修正行
}
修正 js 字符跟二进制互转,二进制跟base64互转
最新推荐文章于 2024-03-14 15:10:34 发布