function isNumber(val) { var regPos = /^d+(.d+)?$/; //非负浮点数 var regNeg = /^(-(([0-9]+.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*)))$/; //负浮点数 if (regPos.test(val) || regNeg.test(val)) { return true; } else { return false; } }
写法来自:https://www.cnblogs.com/maxm/p/6743989.html
下面是错误写法,这种前后是数字也会被判定为纯数字
var reg=/^[0-9]+.?[0-9]*$/; if(!reg.test(val)){ return false; } return true;