欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

价格格式化--小数保留两位,整数部分用千分号分割

程序员文章站 2022-07-13 16:51:51
...

在涉及到价格展示的时候,一般 有千分号分割和保留两位小数的需求

    //保留两位小数以及千分位的分隔符
    function toDoubleThousands(num) {
        if (!num) {
            return "0.00";
        }

        //判断是否有小数点
        var s = num.toString().indexOf(".");
        if (s == -1) {//是整数
            return (num || 0).toString().replace(/(\d)(?=(?:\d{3}) $)/g, '$1,')   ".00";
        } else {//是小数
            var arr = num.toString().split(".");
            if (arr.length > 1 && arr[1].length < 2) {//一位小数
                return (arr[0] || 0).toString().replace(/(\d)(?=(?:\d{3}) $)/g, '$1,')   "."   arr[1]   "0";
            } else {//两位小数
                return (arr[0] || 0).toString().replace(/(\d)(?=(?:\d{3}) $)/g, '$1,')   "."   arr[1][0]   arr[1][1];
            }
        }
    }