Javascript中的isNaN函數(shù)使用說明
更新時間:2011年11月10日 15:52:56 作者:
isNaN函數(shù) 返回一個 Boolean 值,指明提供的值是否是保留值 NaN (不是數(shù)字)。
isNaN函數(shù)
返回一個 Boolean 值,指明提供的值是否是保留值 NaN (不是數(shù)字)。
NaN 即 Not a Number
isNaN(numValue)
必選項 numvalue 參數(shù)為要檢查是否為 NAN 的值。
說明
假如值是 NaN, 那么 isNaN 函數(shù)返回 true ,否則返回 false 。 使用這個函數(shù)的典型情況是檢查 parseInt 和 parseFloat 方法的輸入值。
還有一種辦法,變量可以與它自身進行比較。 假如比較的結果不等,那么它就是 NaN 。 這是因為 NaN 是唯一與自身不等的值。
isNaN函數(shù)用法示例:比如我有一個textbox用于錄入數(shù)字型的數(shù)據(jù),在提交表單的時候我要驗證該textbox中的值是否為數(shù)據(jù),那么我們可以使用isNaN函數(shù)。
function checkValue()
{
if(isNaN(document.all.textbox.value))
{
alert("請用數(shù)字錄入!");
return false;
}
}
isNaN的典型使用是為parseInt和parseFloat方法的輸入值進行一個提前的檢驗,但這種簡單結果并不好。雖然可能有一些教課書上也這么說,甚至于錯誤地認為其是一個檢查parseInt和parseFloat的返回值,這樣都是錯誤的。
parseInt與parseFloat是將一個字符型按數(shù)字進行一個轉(zhuǎn)化。但自身還有錯誤處理的,如果你的輸入值不是一個數(shù)字時,則parseInt和parseFloat返回一個消息:“is not number”,但一般的情況下我們都是對一個數(shù)字樣式的字符串進行轉(zhuǎn)換的,誰會無聊到轉(zhuǎn)化非數(shù)字型的呢?所以你輸入的參數(shù)是否合格,可以先進行一次isNaN檢查的。
但如果我們有意識的以下行為,事先是不能用isNaN進行檢查的,數(shù)字開頭中間含有字母時,如果用isNaN進行檢查是通不過的。
如果是一個空串或是一個空格,而isNaN是做為數(shù)字0進行處理的,而parseInt與parseFloat是返回一個錯誤消息,這個isNaN檢查不嚴密而導致的。
兩個函數(shù)是獨立的,并不會誰為誰而生存,isNaN與parseInt/parseFloat并沒有關系。
返回一個 Boolean 值,指明提供的值是否是保留值 NaN (不是數(shù)字)。
NaN 即 Not a Number
isNaN(numValue)
必選項 numvalue 參數(shù)為要檢查是否為 NAN 的值。
說明
假如值是 NaN, 那么 isNaN 函數(shù)返回 true ,否則返回 false 。 使用這個函數(shù)的典型情況是檢查 parseInt 和 parseFloat 方法的輸入值。
還有一種辦法,變量可以與它自身進行比較。 假如比較的結果不等,那么它就是 NaN 。 這是因為 NaN 是唯一與自身不等的值。
isNaN函數(shù)用法示例:比如我有一個textbox用于錄入數(shù)字型的數(shù)據(jù),在提交表單的時候我要驗證該textbox中的值是否為數(shù)據(jù),那么我們可以使用isNaN函數(shù)。
復制代碼 代碼如下:
function checkValue()
{
if(isNaN(document.all.textbox.value))
{
alert("請用數(shù)字錄入!");
return false;
}
}
isNaN的典型使用是為parseInt和parseFloat方法的輸入值進行一個提前的檢驗,但這種簡單結果并不好。雖然可能有一些教課書上也這么說,甚至于錯誤地認為其是一個檢查parseInt和parseFloat的返回值,這樣都是錯誤的。
parseInt與parseFloat是將一個字符型按數(shù)字進行一個轉(zhuǎn)化。但自身還有錯誤處理的,如果你的輸入值不是一個數(shù)字時,則parseInt和parseFloat返回一個消息:“is not number”,但一般的情況下我們都是對一個數(shù)字樣式的字符串進行轉(zhuǎn)換的,誰會無聊到轉(zhuǎn)化非數(shù)字型的呢?所以你輸入的參數(shù)是否合格,可以先進行一次isNaN檢查的。
但如果我們有意識的以下行為,事先是不能用isNaN進行檢查的,數(shù)字開頭中間含有字母時,如果用isNaN進行檢查是通不過的。
如果是一個空串或是一個空格,而isNaN是做為數(shù)字0進行處理的,而parseInt與parseFloat是返回一個錯誤消息,這個isNaN檢查不嚴密而導致的。
兩個函數(shù)是獨立的,并不會誰為誰而生存,isNaN與parseInt/parseFloat并沒有關系。
相關文章
javascript設計模式 – 職責鏈模式原理與用法實例分析
這篇文章主要介紹了javascript設計模式 – 職責鏈模式,結合實例形式分析了javascript職責鏈模式相關概念、原理、用法及操作注意事項,需要的朋友可以參考下2020-04-04
原創(chuàng)javascript小游戲?qū)崿F(xiàn)代碼
javascript小游戲?qū)崿F(xiàn)代碼,喜歡用javascript實現(xiàn)游戲效果代碼的朋友可以參考下。2010-08-08
JavaScript函數(shù)式編程(Functional Programming)組合函數(shù)(Composition)用法分析
這篇文章主要介紹了JavaScript函數(shù)式編程(Functional Programming)組合函數(shù)(Composition)用法,結合實例形式分析了javascript函數(shù)式編程中組合函數(shù)的概念、原理、用法及操作注意事項,需要的朋友可以參考下2019-05-05
深入理解JS中的微任務和宏任務的執(zhí)行順序及應用場景
JavaScript中的任務分為宏任務和微任務,它們的執(zhí)行順序會影響代碼的執(zhí)行結果。了解它們的機制可以幫助我們更好地理解事件循環(huán)和異步編程,避免出現(xiàn)一些意想不到的錯誤2023-05-05
js中setTimeout()與clearTimeout()用法實例淺析
這篇文章主要介紹了js中setTimeout()與clearTimeout()用法,以實例形式分析了setTimeout()與clearTimeout()的功能與使用技巧,需要的朋友可以參考下2015-05-05
javascript小數(shù)計算出現(xiàn)近似值的解決辦法
在javascript里面,小數(shù)只能進行相似計算,例如:5.06+1.30,你得到的結果會是6.359999999999999,但有的小數(shù)計算又是正確的,如果計算出現(xiàn)了近似值,你可以用如下的方法計算。2010-02-02

