js实现进制转换

6 篇文章 0 订阅

1.js用toString方法就可以实现进制转换

// 1234 转 7 进制
console.log(Number(1234).toString(7))
Number.prototype.transform = function (base) {
  let num = this;
  if (num === 0) {
    return "0";
  }
  let prefix = "";
// 如果数字小于0 保留前缀
// 转为正数操作
  if (num < 0) {
    prefix = "-";
    num = -num;
  }
//大于9的数字
  const map = ["A", "B", "C", "D", "E", "F"];
  let result = [];
  while (num > 0) {
    let rest = num % base;
    num = Math.floor(num / base);
    //大于9的数字用字母代替
    result.push(rest > 9 ? map[rest - 10] : rest);
  }
  return `${prefix}${result.reverse().join("")}`;
};
const r1 = Number(-2).transform(2);
console.log(r1);

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值