数字变为千分位

版权声明:复制发表请附上原创博客地址 https://blog.csdn.net/weixin_41077029/article/details/84036015
方法一:
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;
        }
    }

猜你喜欢

转载自blog.csdn.net/weixin_41077029/article/details/84036015