javascript转换金额格式

        //转换金额格式 10,000.00
        //money=金额
        //n=保留小数位数 默认2位
        function parseMoney(money, n) {
            if (money == 'undefined' || money == null || money == '0' || money == undefined || money == "" || parseFloat(money) == 0) {
                return '0.00';
            } else {
                if (money > 0) { //金额为大于0
                    n = n > 0 && n <= 20 ? n : 2;
                    money = parseFloat((money + "").replace(/[^\d\.-]/g, "")).toFixed(n) + "";
                    var l = money.split(".")[0].split("").reverse();
                    var r = money.split(".")[1];
                    var t = "";
                    for (i = 0; i < l.length; i++) {
                        t += l[i] + ((i + 1) % 3 == 0 && (i + 1) != l.length ? "," : "");
                    }
                    return t.split("").reverse().join("") + "." + r;
                } else { //金额小于0
                    n = n > 0 && n <= 20 ? n : 2;
                    money = parseFloat((money + "").replace(/[^\d\.-]/g, "")).toFixed(n) + "";
                    var l = money.split(".")[0].split("").reverse();
                    l.pop();
                    var r = money.split(".")[1];
                    var t = "";
                    for (i = 0; i < l.length; i++) {
                        t += l[i] + ((i + 1) % 3 == 0 && (i + 1) != l.length ? "," : "");
                    }
                    return '-' + t.split("").reverse().join("") + "." + r;
                }
            }
        }

 

posted @ 2016-09-08 15:34  杨潇love  阅读(726)  评论(0编辑  收藏  举报