504. 七进制数
查看原题

解题思路
先判断数字是正数还是负数,如果是负数则要在结果中加个 '-' ,将其转换为正数进行运算;如果为0直接返回'0'.
迭代num,如果num>0,则取num%7为当前的最小项,再使用num / 7,不断将位数提前。
代码
/**
* @param {number} num
* @return {string}
*/
var convertToBase7 = function(num) {
let str = ''
let arr = [];
if(num < 0){
str = '-'
}else if(num === 0){
return '0';
}
num = Math.abs(num);
while(num>0){
arr.unshift(num % 7);
num = Math.floor(num / 7);
}
return str + arr.join('');
};


浙公网安备 33010602011771号