JS 数字每三位加逗号的方法(包含小数)

Posted 雨殇丶

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS 数字每三位加逗号的方法(包含小数)相关的知识,希望对你有一定的参考价值。

function formatNum(str) {
    var newStr = "";
    var count = 0;
    // 当数字是整数
    if (str.indexOf(".") == -1) {
        for (var i = str.length - 1; i >= 0; i--) {
            if (count % 3 == 0 && count != 0) {
                newStr = str.charAt(i) + "," + newStr;
            } else {
                newStr = str.charAt(i) + newStr;
            }
            count++;
        }
        str = newStr + ".00"; //自动补小数点后两位
        return str;
    }
    // 当数字带有小数
    else {
        for (var i = str.indexOf(".") - 1; i >= 0; i--) {
            if (count % 3 == 0 && count != 0) {
                newStr = str.charAt(i) + "," + newStr;
            } else {
                newStr = str.charAt(i) + newStr; //逐个字符相接起来
            }
            count++;
        }
        str = newStr + (str + "00").substr((str + "00").indexOf("."), 3);
        return str;
    }
}

formatNum(13213.24); //输出13,213.34
formatNum(132134.2);  //输出132,134.20
formatNum(132134);  //输出132,134.00
formatNum(132134.236);  //输出132,134.23

 

function formatNum(str) {
    var newStr = "";
    var count = 0;
    // 当数字是整数
    if (str.indexOf(".") == -1) {
        for (var i = str.length - 1; i >= 0; i--) {
            if (count % 3 == 0 && count != 0) {
                newStr = str.charAt(i) + "," + newStr;
            } else {
                newStr = str.charAt(i) + newStr;
            }
            count++;
        }
        str = newStr + ".00"; //自动补小数点后两位
        return str;
    }
    // 当数字带有小数
    else {
        for (var i = str.indexOf(".") - 1; i >= 0; i--) {
            if (count % 3 == 0 && count != 0) {
                newStr = str.charAt(i) + "," + newStr;
            } else {
                newStr = str.charAt(i) + newStr; //逐个字符相接起来
            }
            count++;
        }
        str = newStr + (str + "00").substr((str + "00").indexOf("."), 3);
        return str;
    }
}

formatNum(‘13213.24‘); //输出13,213.34
formatNum(‘132134.2‘);  //输出132,134.20
formatNum(‘132134‘);  //输出132,134.00
formatNum(‘132134.236‘);  //输出132,134.23

以上是关于JS 数字每三位加逗号的方法(包含小数)的主要内容,如果未能解决你的问题,请参考以下文章

JS格式化数字(每三位加逗号)

JS格式化数字(每三位加逗号)

JS格式化数字(每三位加逗号)

php实现数字格式化,数字每三位加逗号的功能函数

为啥在一串数字中每三位加一个逗号,就像1,234,567.01这样有何作用?

js金额数字格式化实现代码(三位加逗号处理保留两位置小数)