js 金额用,隔开(千分位加逗号) 例如 100,222.123

2020-09-04  本文已影响0人  岳O9

方法一

numFormat(num) {

        var c = (num.toString().indexOf ('.') !== -1) ? num.toLocaleString() : num.toString().replace(/(\d)(?=(?:\d{3})+$)/g, '$1,');

        return c;

    }

console.log(this.numFormat(20181029.120))

方法二

//格式化钱数,三位加一逗号

function toThousands(number) {

number = number +"";

number = number.replace(/\,/g, "");

if(isNaN(number) || number == "")return "";

number = Math.round(number * 100) / 100;

    if (number < 0)

        return '-' + outputdollars(Math.floor(Math.abs(number) - 0) + '') + outputcents(Math.abs(number) - 0);

    else

        return outputdollars(Math.floor(number - 0) + '') + outputcents(number - 0);

}

//格式化金额

function outputdollars(number) {

    if (number.length <= 3)

        return (number == '' ? '0' : number);

    else {

        var mod = number.length % 3;

        var output = (mod == 0 ? '' : (number.substring(0, mod)));

        for (i = 0; i < Math.floor(number.length / 3); i++) {

            if ((mod == 0) && (i == 0))

                output += number.substring(mod + 3 * i, mod + 3 * i + 3);

            else

                output += ',' + number.substring(mod + 3 * i, mod + 3 * i + 3);

        }

        return (output);

    }

}

function outputcents(amount) {

    amount = Math.round(((amount) - Math.floor(amount)) * 100);

    return (amount < 10 ? '.0' + amount : '.' + amount);

}

上一篇 下一篇

猜你喜欢

热点阅读