Javascript中的isNaN函數(shù)使用說(shuō)明
返回一個(gè) Boolean 值,指明提供的值是否是保留值 NaN (不是數(shù)字)。
NaN 即 Not a Number
isNaN(numValue)
必選項(xiàng) numvalue 參數(shù)為要檢查是否為 NAN 的值。
說(shuō)明
假如值是 NaN, 那么 isNaN 函數(shù)返回 true ,否則返回 false 。 使用這個(gè)函數(shù)的典型情況是檢查 parseInt 和 parseFloat 方法的輸入值。
還有一種辦法,變量可以與它自身進(jìn)行比較。 假如比較的結(jié)果不等,那么它就是 NaN 。 這是因?yàn)?NaN 是唯一與自身不等的值。
isNaN函數(shù)用法示例:比如我有一個(gè)textbox用于錄入數(shù)字型的數(shù)據(jù),在提交表單的時(shí)候我要驗(yàn)證該textbox中的值是否為數(shù)據(jù),那么我們可以使用isNaN函數(shù)。
function checkValue()
{
if(isNaN(document.all.textbox.value))
{
alert("請(qǐng)用數(shù)字錄入!");
return false;
}
}
isNaN的典型使用是為parseInt和parseFloat方法的輸入值進(jìn)行一個(gè)提前的檢驗(yàn),但這種簡(jiǎn)單結(jié)果并不好。雖然可能有一些教課書(shū)上也這么說(shuō),甚至于錯(cuò)誤地認(rèn)為其是一個(gè)檢查parseInt和parseFloat的返回值,這樣都是錯(cuò)誤的。
parseInt與parseFloat是將一個(gè)字符型按數(shù)字進(jìn)行一個(gè)轉(zhuǎn)化。但自身還有錯(cuò)誤處理的,如果你的輸入值不是一個(gè)數(shù)字時(shí),則parseInt和parseFloat返回一個(gè)消息:“is not number”,但一般的情況下我們都是對(duì)一個(gè)數(shù)字樣式的字符串進(jìn)行轉(zhuǎn)換的,誰(shuí)會(huì)無(wú)聊到轉(zhuǎn)化非數(shù)字型的呢?所以你輸入的參數(shù)是否合格,可以先進(jìn)行一次isNaN檢查的。
但如果我們有意識(shí)的以下行為,事先是不能用isNaN進(jìn)行檢查的,數(shù)字開(kāi)頭中間含有字母時(shí),如果用isNaN進(jìn)行檢查是通不過(guò)的。
如果是一個(gè)空串或是一個(gè)空格,而isNaN是做為數(shù)字0進(jìn)行處理的,而parseInt與parseFloat是返回一個(gè)錯(cuò)誤消息,這個(gè)isNaN檢查不嚴(yán)密而導(dǎo)致的。
兩個(gè)函數(shù)是獨(dú)立的,并不會(huì)誰(shuí)為誰(shuí)而生存,isNaN與parseInt/parseFloat并沒(méi)有關(guān)系。
相關(guān)文章
詳解實(shí)現(xiàn)一個(gè)通用的“劃詞高亮”在線筆記功能
這篇文章主要介紹了實(shí)現(xiàn)一個(gè)通用的“劃詞高亮”在線筆記文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04
javascript簡(jiǎn)單拖拽實(shí)現(xiàn)代碼(鼠標(biāo)事件 mousedown mousemove mouseup)
javascript簡(jiǎn)單拖拽,簡(jiǎn)單拖拽實(shí)現(xiàn)2012-05-05
JavaScript通過(guò)setTimeout實(shí)時(shí)顯示當(dāng)前時(shí)間的方法
這篇文章主要介紹了JavaScript通過(guò)setTimeout實(shí)時(shí)顯示當(dāng)前時(shí)間的方法,涉及javascript操作時(shí)間顯示的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-04-04
js實(shí)現(xiàn)簡(jiǎn)單的日歷顯示效果函數(shù)示例
這篇文章主要介紹了js實(shí)現(xiàn)簡(jiǎn)單的日歷顯示效果函數(shù),結(jié)合完整實(shí)例形式分析了JavaScript實(shí)現(xiàn)的日歷功能相關(guān)原理與具體操作技巧,需要的朋友可以參考下2019-11-11
微信小程序?qū)崿F(xiàn)簡(jiǎn)單計(jì)算器
這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)懞?jiǎn)單計(jì)算器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-04-04
微信小程序獲取音頻時(shí)長(zhǎng)與實(shí)時(shí)獲取播放進(jìn)度問(wèn)題
這篇文章主要介紹了微信小程序獲取音頻時(shí)長(zhǎng)與實(shí)時(shí)獲取播放進(jìn)度,文中給大家通過(guò)一個(gè)例子介紹了微信小程序音頻長(zhǎng)度獲取的問(wèn)題,感興趣的朋友跟隨腳本之家小編一起看看吧2018-08-08
bootstrap-table formatter 使用vue組件的方法
Bootstrap table是國(guó)人開(kāi)發(fā)的一款基于 Bootstrap 的 jQuery 表格插件,通過(guò)簡(jiǎn)單的設(shè)置,就可以擁有強(qiáng)大的單選、多選、排序、分頁(yè),以及編輯、導(dǎo)出、過(guò)濾(擴(kuò)展)等等的功能。這篇文章重點(diǎn)給大家介紹bootstrap-table formatter 使用vue組件的方法,感興趣的朋友一起看看2019-05-05
微信小程序登陸注冊(cè)功能的實(shí)現(xiàn)代碼
通常小程序有為我們提供用戶(hù)授權(quán)登陸的功能,但是這個(gè)只能獲取用戶(hù)的頭像和昵稱(chēng),今天帶大家學(xué)習(xí)小程序登陸注冊(cè)功能的開(kāi)發(fā),需要的朋友可以參考下2019-12-12

