可输入数字、小数点、减号、e
checkNum(val) {
const zhi = val.charAt(0)
// 转化为数字形式--包含小数,负数,e
// 先把非数字的都替换掉,除了数字和.,e,-
val = val.replace(/[^\d.e-]/g, '')
// 必须保证第一个为数字而不是.
val = val.replace(/^\./g, '')
// 保证只有出现一个.而没有多个.
val = val.replace(/\.{2,}/g, '.')
// 保证.只出现一次,而不能出现两次以上
val = val.replace('.', '$#$').replace(/\./g, '').replace('$#$', '.')
// 如果第一位是负号,则允许添加
if (zhi === '-') {
val = '-' + val
}
//数字千分位逗号分隔
//var str = val.toString();
//var reg = str.indexOf(".") > -1 ? /(\d)(?=(\d{3})+\.)/g : /(\d)(?=(?:\d{3})+$)/g;
//return str.replace(reg,"$1,");
return val;
}