JavaScript判斷輸入是否為數字類型的方法總結
前言
很多時候需要判斷一個輸入是否位數字,下面簡單列舉集中方法。
第一種方法 isNaN
isNaN 返回一個 Boolean 值,指明提供的值是否是保留值 NaN (不是數字)。
NaN 即 Not a Number
1
|
isNaN(numValue)
|
但是如果numValue果是一個空串或是一個空格,而isNaN是做為數字0進行處理的,而parseInt與parseFloat是返回一個錯誤消息,這個isNaN檢查不嚴密而導致的。
第二種方法 正則表達式
1
2
3
4
5
6
|
function
checkRate(input) {
var
re = /^[0-9]+.?[0-9]*/;
//判斷字符串是否為數字//判斷正整數/[1−9]+[0−9]∗]∗/
if
(!re.test(nubmer)) {
alert(“請輸入數字”);
}
}
|
第三種方法 利用parseFloat的返回值
1
2
3
4
5
6
7
8
9
10
|
function
isNotANumber(inputData) {
//isNaN(inputData)不能判斷空串或一個空格
//如果是一個空串或是一個空格,而isNaN是做為數字0進行處理的,而parseInt與parseFloat是返回一個錯誤消息,這個isNaN檢查不嚴密而導致的。
if
(parseFloat(inputData).toString() == “NaN”) {
//alert(“請輸入數字……”);
return
false
;
}
else
{
return
true
;
}
}
|