数字标准化为x,xxx,xxx的方法

简单提供一个传入任意数字转为x,xxx,xxx的方法

function numberFormate(num) { // 数字格式化为x,xxx,xxx,xxx
      num = parseFloat(num);
      if (!Number.isNaN(num)) {
        let str = Math.abs(num).toString().split('.');
        const a = Math.ceil(str[0].length / 3);
        str[0] = str[0].padStart(a * 3, '0');
        const numArr = [];
        for (let i = 0; i < a; i++) {
          numArr.push(str[0].substring(i * 3, (i + 1) * 3));
        }
        numArr[0] = parseInt(numArr[0]);
        const formateStr = numArr.join(',') + (str[1] ? '.' + str[1] : '');
        return num < 0 ? "-" + formateStr : formateStr;
      } else {
        throw new TypeError("传入的参数必须是数字");
      }
    }

使用

numberFormate('-1123456789'); // 结果为-1,123,456,789
numberFormate(1123456789.2234); // 结果为1,123,456,789.2234
numberFormate('1123456789.2234.5567'); // 结果为1,123,456,789.2234
numberFormate('qw1123456789.2234.5567'); // 传入的值转成数字后变成NaN的会抛出类型错误

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值