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; 
  } 
}