js 金钱格式化(money)

* value,金额
* thou,是否加分号
*len 小数数位
    Vue.filter('money', function (value, thou, len) {
        if (value === 'undefined' || value === '' || value == null) {
            return '';
        }
        if (value < 0) {
            return '-' + (Vue.tpUtil.showNumber(thou, len, -value))
        }
        return Vue.tpUtil.showNumber(thou, len, value);
    })

showNumber方法

showNumber: function (thou, len, value) {
            var code = '';
            if (!len) {
                len = 2
            } else {
                len = parseInt(len) || 2;
            }
            if (!value || parseFloat(value) === '0') {
                code = Number('0').toFixed(len);
                return code;
            }
            if (value && parseFloat(value) !== '0') {
                if (!isNaN(parseFloat(Vue.tpUtil.delcommafy(value)))) {
                    var itemValue = parseFloat(Vue.tpUtil.delcommafy(value));
                    // if (itemValue >= minValue && itemValue <= maxValue) {
                    if (thou) {
                        code = Vue.tpUtil.comdify(Number(itemValue).toFixed(len));
                    } else {
                        code = Number(value).toFixed(len);
                    }
                } else {
                    code = '';
                }
            }
            return code;
        },

去除千分位中的‘,’

delcommafy: function (num) { // 去除千分位中的‘,’
            num = num.toString();
            num = num.replace(/,/gi, '');
            return +num;
        },

comdify方法

comdify: function (n) {
            var re = /\d{1,3}(?=(\d{3})+$)/g,
                n1 = n.replace(/^(-?\d+)((\.\d+)?)$/, function (s, s1, s2) {
                    return s1.replace(re, '$&,') + s2;
                });
            return n1;
        },
上一篇:“21天好习惯”第一期-19


下一篇:mysql 之 增删改查