十进制转换二进制

185 阅读1分钟
function binary(num) {
      if (isNaN(num)) return;
      let arr = [];
      while (num > 0) {
        //只有商为0的时候才是计算到最后了
        if (num % 2 == 0) {
          arr.push(0);
        } else {
          arr.push(1);
        }
        num = parseInt(num / 2);
      }
      //因为二进制取值的是是从后向前取的,所以要翻转数组
      return arr.reverse().join("");
    }

从网上看到的另一种方法

    function dec2bin(th) {
      dec = th;
      bin = "";
      while (dec > 0) {
        if (dec % 2 != 0) {
          bin = "1" + bin;
        } else {
          bin = "0" + bin;
        }
        dec = parseInt(dec / 2);
      }
      return bin;
    }
    ```