js对数字使用逗号“,”进行三位分割

419 阅读1分钟

js对数字使用逗号“,”进行三位分割

当你们遇到这样的需求场景,怎么办?当然是百度了,有人写好的东西我们为什么还要写。直接开干

/**
 * 对数字进行三位分割
 * @param {*} value  需要进行分割的数字
 * @returns  返回分割后的数字串
 */
 
// 小数部分只显示两位小数
 
export function numberFormat(value) {
    if (!value) return '0';

    // 获取整数部分的数字
    var intPart = Number(value).toFixed(0);
    // 将整数部分逢三一断
    var intPartFormat = intPart.toString().replace(/(\d)(?=(?:\d{3})+$)/g, '$1,');
    // 预定义小数部分
    var floatPart = '.00';
    var value2Array = value.toString().split('.');

    // =2表示数据有小数位
    if (value2Array.length === 2) {
        floatPart = value2Array[1].toString() // 拿到小数部分
        if (floatPart.length === 1) {
            // 补0
            return intPartFormat + '.' + floatPart + '0'    
        } else {
            return intPartFormat + '.' + floatPart
        }
    } else {
        return intPartFormat
    }
}