JAVASCRIPT
VUE
REACT
NODE
ES6
TYPESCRIPT

Js对数字千分位保留两位小数格式

2021. 08. 12    

JS对数字千分位格式化操作

//对数字千分位保留两位小数格式
function format_number(n) {
    let num = n.toFixed(2).toString();
    let arr = num.includes('.') ? num.split('.') : [num]
    let len = arr[0].length;
    if (len <= 3) { return num; }
    let r = len % 3;
    return r > 0 ? arr[0].slice(0, r) + "," + arr[0].slice(r, len).match(/\d{3}/g).join(",") + '.' + arr[1] : arr[0].slice(r, len).match(/\d{3}/g).join(",") + '.' + arr[1];
}
console.log(format_number(105460.2))


//对数据设置千分位 不含小数点
function moneySet(n){
    let num = n.toString();
    let len = num.length;
    if (len <= 3) { return num; }
    let r = len % 3;
    let str = ''
    str =  r > 0 ? (num.slice(0, r) + "," + num.slice(r, len).match(/\d{3}/g).join(",") ) : (num.slice(r, len).match(/\d{3}/g).join(","));
    return str;
}

// 对数据删除千分位
function moneyDelete(num){
    if(num&&num!=undefined&&num!=null){
        let _num = num;
        _num = _num.toString();
        _num = _num.replace(/,/gi,'');
        return _num
    }else{
        return num
    }
}