function convertToBinary(num) {
let str = num.toString(2)
let distanceLen = 8 - str.length
// let zero = new Array(distanceLen + 1).join('0') // 另一种生成重复字符的方法
let zero = ('0').repeat(distanceLen) // ES6生成重复字符的方法
return zero + str
} function convertToBinary(num) {
return ("0000000" + num.toString(2)).slice(-8);
} function convertToBinary(num) {
var ret = '';
while (num !== 0) {
ret = (num & 1) + ret;
num >>= 1;
}
for (let i = (8 - ret.length); i > 0; --i) {
ret = '0' + ret;
}
return ret;
} /*function convertToBinary(num) { // 这个ES6可以实现,但在这通不过测试
return num.toString(2).padStart(8, '0');
}*/
function convertToBinary(num) {
var s = num.toString(2)
return '0'.repeat(8-s.length)+s; // "0"*(8-s.length)不行,"0"会被转为0
} function convertToBinary(num) {
var bin, str = '';
// 先将num转换成二进制字符串
while(num){
bin = num % 2;
str += bin;
num = Math.floor(num / 2);
}
// 判断字符串长度 不足8补零
if(str.length < 8){
str = '00000000'.slice(0, 8 - str.length) + str;
}
return str;
}
各位大佬我的哪里错了吗,我输入65,测试是对的,但提交不能通过。。。。
function convertToBinary(num) { //转换为2进制格式 var s = num.toString(2); //获得2进制数长度 var l = s.length; if(l<8){ //声明一个字符串用于补满0 var s1 = "0000000"; var s2 = s1.slice(0,8-l); s = s2+s; } return s; }