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

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

作者: 沐深 | 来源:发表于2021-11-08 11:26 被阅读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")); // @%$+  
    

    相关文章

      网友评论

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

          本文链接:https://www.haomeiwen.com/subject/adjuzltx.html