小数输入验证规则,只能一个小数点,可以输入负数等
const onlyNumber = (num) => { var n = String(num); var t = n.charAt(0); // 先把非数字的都替换掉,除了数字和. n = n.replace(/[^\d\.]/g, ''); // 必须保证第一个为数字而不是. n = n.replace(/^\./g, ''); // 保证只有出现一个.而没有多个. n = n.replace(/\.{2,}/g, '.'); // 保证.只出现一次,而不能出现两次以上 n = n.replace('.', '$#$').replace(/\./g, '').replace('$#$', '.'); // 如果第一位是负号,则允许添加 if (t === '-') { n = '-' + n; } return n; };
记录自己的采坑之路,需要时方便查找