很多时候需要判断一个输入是否位数字, 那么 JavaScript 怎么检查输入是否是数字类型? 下面本篇文章给大家介绍一下. 有一定的参考价值, 有需要的朋友可以参考一下, 希望对大家有所帮助.
第一种方法 isNaN
isNaN 返回一个 Boolean 值, 指明提供的值是否是保留值 NaN (不是数字).
NaN 即 Not a Number
语法:
isNaN(numValue)
但是如果 numValue 果是一个空串或是一个空格, 而 isNaN 是做为数字 0 进行处理的, 而 parseInt 与 parseFloat 是返回一个错误消息, 这个 isNaN 检查不严密而导致的.
第二种方法 正则表达式
- function checkRate(input) {
- var re = /^[0-9]+.?[0-9]*/;// 判断字符串是否为数字 // 判断正整数 /[1−9]+[0−9]]/
- if (!re.test(nubmer)) {
- alert("请输入数字");
- }
- }
第三种方法 利用 parseFloat 的返回值
- function isNotANumber(inputData) {
- //isNaN(inputData) 不能判断空串或一个空格
- // 如果是一个空串或是一个空格, 而 isNaN 是做为数字 0 进行处理的,
- // 而 parseInt 与 parseFloat 是返回一个错误消息, 这个 isNaN 检查不严密而导致的.
- if (parseFloat(inputData).toString() == "NaN") {
- //alert("请输入数字......");
- return false;
- } else {
- return true;
- }
- }
更多 web 前端开发 https://www.html.cn/ 知识, 请查阅 HTML 中文网 !!
来源: http://www.css88.com/qa/javascript/17342.html