vue 限制小数点位数以及只能输入数字
作者:互联网
formatDecimal(str, num) { //str当前输入值,num是想要保留的小数位数 str = String(str); if (!str.trim()) { return str; } var len1 = str.substr(0, 1); var len2 = str.substr(1, 1); // 如果第一位是0,第二位不是点,就用数字把点替换掉 if (str.length > 1 && len1 === 0 && len2 !== ".") { str = str.substr(1, 1); } // 第一位不能是. if (len1 === ".") { str = ""; } // 限制只能输入一个小数点 if (str.indexOf(".") !== -1) { var str_ = str.substr(str.indexOf(".") + 1); if (str_.indexOf(".") !== -1) { str = str.substr(0, str.indexOf(".") + str_.indexOf(".") + 1); } } // 正则替换 str = str.replace(/[^\d^.]+/g, ""); // 保留数字和小数点 if (num || num === 0) { var rest = str.split(".")[1]; if (rest && rest.length > num) { rest = rest.substr(0, num); str = str.split(".")[0] + "." + rest; } } return str; },
原文在https://blog.csdn.net/weixin_46190955/article/details/121848167
标签:vue,indexOf,小数点,rest,substr,num,位数,str,var 来源: https://www.cnblogs.com/ximenchuifa/p/16541208.html