给金额框增加千位符,并判断是否含数字以外的值如果有则清空, 同时限制只能输入两位小数, 如果输入的是整数 会默认加上" .00 " (三)

changeNum(s) {
    // 防范后端传给的是非字符串值
    s = s.toString();
    // 检测传进来的 s 是否为非数字值 和 非字符串
    if (isNaN(s) && !(typeof s === "string")) {
        return s;
    }
    s = "" + s;
    s = s.replace(/,/g, "");
    s = (s + "").split(".");
    let l = s[0].split("").reverse();
    let r = s[1];
    if (r) {
        if (r.length === 1) {
            r = "." + r + "0";
        } else if (r.length === 2) {
            r = "." + r;
        } else {
            r = "." + r.substr(0, 2);
        }
    } else {
        r = ".00";
    }
    let t = "";
    for (let i = 0; i < l.length; i++) {
        t += l[i] + ((i + 1) % 3 === 0 && i + 1 !== l.length && l[i + 1] !== "-" ? "," : "");
    }
    return t.split("").reverse().join("") + r;
}

 

posted on 2019-08-01 15:01  ㅤㅤㅤㅤㅤㅤ  阅读(184)  评论(0编辑  收藏  举报

导航