JavaScript中向二进制字符串添加前导零的方法

JavaScript中向二进制字符串添加前导零的方法,javascript,binary,Javascript,Binary,我使用了.toString(2)将整数转换为二进制,但它只返回需要的二进制(即第一位是1) 那么,在哪里: num = 2; num.toString(2) // yields 10. 如何生成八位字节00000010?试试这样的方法 function pad(n, width, z) { z = z || '0'; n = n + ''; return n.length >= width ? n : new Array(width - n.length + 1).join

我使用了.toString(2)将整数转换为二进制,但它只返回需要的二进制(即第一位是1)

那么,在哪里:

num = 2;
num.toString(2) // yields 10. 

如何生成八位字节00000010?

试试这样的方法

function pad(n, width, z) {
  z = z || '0';
  n = n + '';
  return n.length >= width ? n : new Array(width - n.length + 1).join(z) + n;
}
。。。然后用它作为

pad(num.toString(2), 8);
这很简单

var n = num.toString(2);
n = "00000000".substr(n.length) + n;

您可以使用while循环在结果的前面添加零,直到结果的长度正确为止

var num = 2,
    binaryStr = num.toString(2);

while(binaryStr.length < 8) {
    binaryStr = "0" + binaryStr;
}
var num=2,
binaryStr=num.toString(2);
while(二进制str.length<8){
binaryStr=“0”+binaryStr;
}

您只需在结果的前面添加零,直到其长度正确为止。回答如下:谢谢-聪明的解决方案。直观的解决方案-谢谢现在您可以使用标准的“n.padStart(paddingSize,'0');”