数字变为千分位

本文介绍了两种使用JavaScript实现数字千位分隔符的方法。第一种方法通过将数字转换为字符串并利用正则表达式进行格式化,第二种方法则是在此基础上进行了更详细的数字处理,包括正负号的处理和小数点后的保留位数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

方法一:
parseToThousandth(num, point = 2) {
      let [sInt, sFloat] = (Number.isInteger(num) ? `${num}` :     num.toFixed(point)).split('.');
      sInt = sInt.replace(/\d(?=(\d{3})+$)/g, '$&,');
      return sFloat ? `${sInt}.${sFloat}` : `${sInt}`;
    },
    方法二:
    var weekValue=10000000;
    if(weekValue!=0){
        weekValue = parseToThousandth(weekValue);//调用
        console.log(weekValue);
    }
    function parseToThousandth(number) {
        if(number==0){
            return number;
        }else if(number==0.0){
            return number;
        }
        var num = number + "";
        num = num.replace(new RegExp(",","g"),"");
        // 正负号处理
        var symble = "";
        if(/^([-+]).*$/.test(num)) {
            symble = num.replace(/^([-+]).*$/,"$1");
            num = num.replace(/^([-+])(.*)$/,"$2");
        }
        if(/^[0-9]+(\.[0-9]+)?$/.test(num)) {
            var num = num.replace(new RegExp("^[0]+","g"),"");
            if(/^\./.test(num)) {
                num = "0" + num;
            }
            var decimal = num.replace(/^[0-9]+(\.[0-9]+)?$/,"$1");
            var integer= num.replace(/^([0-9]+)(\.[0-9]+)?$/,"$1");
            var re=/(\d+)(\d{3})/;
            while(re.test(integer)){
                integer = integer.replace(re,"$1,$2");
            }
            return symble + integer + decimal;
        } else {
            return number;
        }
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值