成人免费在线观看视频-国产绿帽子多p交换视频-精品国产一区av-免费xx视频-人妻熟妇乱又伦精品视频中文字幕-特级毛片内射www无码

JavaScript中判斷整字類型最簡潔的實現方法

2016/11/5 9:10:56   閱讀:1587    發布者:1587

這篇文章主要介紹了JavaScript中判斷整字類型最簡潔的實現方法,本文給出多個判斷整數的方法,
最后總結出一個最短、最簡潔的實現方法,需要的朋友可以參考下

 

 

我們知道JavaScript提供了typeof運算符,因此最容易想到的是用typeof來判斷是否是number類型。

 

代碼如下:
function isNumber(obj) { 
    return typeof obj === ’number’ 
} 

  

 

這個函數對于整數和浮點數都沒有問題,但對于NaN值也返回true這讓人感到不爽,
畢竟用isNumber判斷通過后誰也不會用NaN去做算術運算。

那改進一下,用Object.prototype.toString試試。

 

復制代碼代碼如下:

function isNumber(obj) { 
    return Object.prototype.toString.call(obj) === [object Number] 
}

 

 

和typeof判斷一樣,對于NaN也返回true,代碼量還大了,這不是想要的結果。
toString.call方式判斷js數組(Array)可行,數字則力不從心了。

再改進下,NaN值用isNaN函數來對付。

 

復制代碼代碼如下:

function isNumber(obj) { 
    return typeof obj === ’number’ && !isNaN(obj) 
} 

  

 

這次,如果傳入的是非數字(NaN或者可轉成NaN的值)就返回false了

 

復制代碼代碼如下:

function isNumber(obj) { 
    return typeof obj === ’number’ && !isNaN(obj) 
} 
isNumber(1)   // true 
isNumber(1.2) // true 
isNumber(NaN) // false 
isNumber( parseInt(’a’) ) // false 

  

 

嗯,這個isNumber不錯了,但還有一個等價的,用isFinite來判斷

 

代碼如下:

function isNumber(obj) { 
    return typeof obj === ’number’ && isFinite(obj)     
} 

  

 

到現在,最短代碼的數字判斷是此文提到的第三個使用isNaN函數的。
下面隆重推出世界上最短的數字判斷網頁代碼

 

代碼如下:

function isNumber(obj) { 
    return obj === +obj 
} 

  

 

對于整數,浮點數返回true,對于NaN或可轉成NaN的值返回false。

沒看懂是嗎? 咕~~(╯﹏╰)

園友說這還不是世界上最短判斷數字代碼,參數obj可以改成一個字符的。(⊙o⊙)你是對的。

舉一反三,類似的利用JS動態語言特性(運算符運算時內部自動類型轉換)最短的判斷還有。

 

代碼如下:

// 判斷字符串 
function isString(obj) { 
    return obj === obj+’’ 
} 
// 判斷布爾類型 
function isBoolean(obj) { 
    return obj === !!obj 
} 

  

主站蜘蛛池模板: 国产日韩欧美一区二区东京热 | 国产精品无码一区二区三区免费| www91一区| 青青国产线免观| 精品www日韩熟女人妻| 99久久无色码中文字幕| 国产成人亚洲综合无码18禁h| 2021久久精品国产99国产精品| 尤物视频在线观看| 亚在线观看免费视频入口| 精品久久香蕉国产线看观看亚洲 | 色综合亚洲一区二区小说性色aⅴ| 欧美色综合天天久久综合精品| 少女高清影视在线观看动漫 | 亚洲性啪啪无码av天堂| 9久9久女女热精品视频在线观看| 天天夜碰日日摸日日澡性色av| 欧美性爱大吊| 自拍偷自拍亚洲精品偷一| 国产成人18黄网站| 久久香综合精品久久伊人| 天天干天天日| 国产精品无码免费视频二三区| 成人av无码一区二区三区| 国产白嫩美女在线观看| 特黄做受又粗又大又硬老头| 免费人成无码大片在线观看| 人成午夜免费视频在线观看| 亚洲欧美牲交| 精品人人妻人人澡人人爽牛牛| 亚洲 欧美 综合 另类 中字| 国色天香精品一卡2卡3卡4| 亚洲精品tv久久久久久久久| 国产真实乱对白精彩久久老熟妇女 | 不卡无码人妻一区二区| 欧洲熟妇牲交| 久久精品无码一区二区www| 丰满少妇三级全黄| 成人性生交大片免费| 国产在线精品成人一区二区| 中文久久乱码一区二区|