這篇文章主要介紹“JavaScript中的NaN怎么辨別”,在日常操作中,相信很多人在JavaScript中的NaN怎么辨別問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對(duì)大家解答”JavaScript中的NaN怎么辨別”的疑惑有所幫助!接下來,請(qǐng)跟著小編一起來學(xué)習(xí)吧!

站在用戶的角度思考問題,與客戶深入溝通,找到梁園網(wǎng)站設(shè)計(jì)與梁園網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、空間域名、虛擬主機(jī)、企業(yè)郵箱。業(yè)務(wù)覆蓋梁園地區(qū)。
JavaScript中,NaN是一個(gè)特殊的數(shù)字值(typeof NaN的結(jié)果為number),是not a number的縮寫,表示不是一個(gè)合法的數(shù)字。
1. NaN的產(chǎn)生:
一個(gè)不能被解析的數(shù)字
Number('abc') // NaN
Number(undefined) // NaN
失敗的操作
Math.log(-1) // NaN
Math.sqrt(-1) // NaN
Math.acos(2) // NaN
一個(gè)運(yùn)算符為NaN
NaN + 1 // NaN
10 / NaN // NaN
2. 注意點(diǎn)
NaN是唯一一個(gè)和自身不相等的值:
NaN === NaN // false
3. 如何辨別NaN
我們可以使用全局函數(shù)isNaN()來判斷一個(gè)數(shù)值是不是一個(gè)非數(shù)字(并不是用來判斷是不是NaN這個(gè)值):
isNaN(NaN) // true
isNaN(10) // false
為什么說isNaN()不是用來判斷是不是NaN這個(gè)值的呢?因?yàn)?code>isNaN對(duì)非數(shù)字不起作用,它首先做的就是把這些值轉(zhuǎn)換成數(shù)字,轉(zhuǎn)換的結(jié)果可能為NaN,然后函數(shù)會(huì)錯(cuò)誤地返回true:
isNaN('abc') // true
所以我們想確定這個(gè)一個(gè)值是為NaN,可以使用以下兩種方法:
方法一:將isNaN()和typeof結(jié)合來判斷
function isValueNaN(value) {
return typeof value === 'number' && isNaN(value)
}
方法二:值是否與本身不相等(NaN是唯一有這樣特征的值)
function isValueNaN(value) {
return value !== value
}
到此,關(guān)于“JavaScript中的NaN怎么辨別”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!
網(wǎng)站標(biāo)題:JavaScript中的NaN怎么辨別
新聞來源:http://www.chinadenli.net/article2/piipoc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)、服務(wù)器托管、網(wǎng)站改版、小程序開發(fā)、云服務(wù)器、網(wǎng)站策劃
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)