2021-11-08-⛵︎数图番外篇-文本和二进制互转

2021-11-08  本文已影响0人  沐深

JS字符串与二进制的相互转化的方法,具体代码如下所示:

// 字符串转ascii码,用charCodeAt();
// ascii码转字符串,用fromCharCode();

var str = "A";
var code = str.charCodeAt();
var str2 = String.fromCharCode(code);

文本转二机制,基本示例

var a = "i";
console.log(a.charCodeAt()); //105
console.log(a.charCodeAt().toString(2)); //1101001
var a = "我";
console.log(a.charCodeAt()); //25105
console.log(a.charCodeAt().toString(2)); //110001000010001 
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 

二进制转文本

let byte = "110001000010001"
const asciiCode = parseInt(byte,2);
const charValue = String.fromCharCode(asciiCode)
// 我

多个字符互转


// 将字符串转换成二进制形式,中间用空格隔开
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")); // @%$+  
上一篇下一篇

猜你喜欢

热点阅读