Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在javascript中将十进制打印为二进制_Javascript_Arrays_Binary_Decimal_Parseint - Fatal编程技术网

在javascript中将十进制打印为二进制

在javascript中将十进制打印为二进制,javascript,arrays,binary,decimal,parseint,Javascript,Arrays,Binary,Decimal,Parseint,我遇到了一些代码的问题,其中函数用于将十进制数从数组转换为二进制数。我正在使用parseInt进行转换,但它只打印第一个数字,更常见的是打印NaN。我的目标是在html页面上打印所有十进制数的二进制等价物 这是我的密码: function decimal_table () { // real_array stores decimal numbers. const real_array = []; const binary_array = []; fo

我遇到了一些代码的问题,其中函数用于将十进制数从数组转换为二进制数。我正在使用
parseInt
进行转换,但它只打印第一个数字,更常见的是打印
NaN
。我的目标是在html页面上打印所有十进制数的二进制等价物

这是我的密码:

function decimal_table ()
  {
    // real_array stores decimal numbers.

    const real_array = [];
    const binary_array = [];

       for (let i = 0; i <= 50; i++)
      {
        real_array.push(i);
        document.getElementById("numbers").innerHTML = real_array.join(" ");
      }

       for (let b = 0; b <= 50; b++)
      {
        let calc = parseInt(real_array[b], 2);
        binary_array.push(calc);
        document.getElementById("binaries").innerHTML = binary_array.join(" ");
      }
  }
等等。

你可以看看

parseInt(real_array[b], 2);
其中,您有一个数字,其中包含基数为2无法解析的数字

2
为例,执行
parseInt(2,2)

结果是
NaN
,因为
2
不是二进制数,因为二进制数只有0和1的数字

除此之外,这是错误的方向,二进制→ 十进制,但你需要十进制→ 二进制的


你需要以2为基数,以0为起点

您可以采用单个循环并将值添加到数组中

循环结束后,对元素进行赋值

函数十进制表(){
常量实数组=[];
常量二进制数组=[];

对于(设i=0;i可以对基数为2的整数值使用
toString()
方法来获得二进制表示

然后只需填充值

constpad=(n,padding)=>(padding+n).substr(-padding.length)
for(设i=0;i<8;i++){
控制台日志(pad(i.),pad(i.toString(2),'0000');
}
.as控制台包装{top:0;最大高度:100%!重要;}
parseInt(real_array[b], 2);