千分化一个数

正则

需要单独处理小数部分

// 当传入的数字小数过多时,会自动截取
function thousands(num) {
    if (typeof num !== 'number' || isNaN(num)) {
        return false;
    }
    // 将输入的数字转换为字符串
    num = num.toString();
    // 分割整数和小数部分
    let arr = num.split('.');
    let reg = /[1-9]\d{0,2}(?=(\d{3})+$)/g;
    arr[0] = arr[0].replace(reg, '$&,');
    return arr.join('.');
}
thousands(12312312321.123456789); // '12,312,312,321.123457'

toLocaleString()

需要单独处理小数部分

let a = 123456789;
a.toLocaleString(); // '123,456,789'
let b = 14654651156.21345;
b.toLocaleString(); // '14,654,651,156.213'

Intl.NumberFormat

需单独处理小数部分

new Intl.NumberFormat().format(987654321.123456); // 987,654,321.123
Last Updated:
Contributors: zhangfei