js 判斷各種數(shù)據(jù)類(lèi)型的簡(jiǎn)單方法(推薦)
了解js的都知道, 有個(gè)typeof 用來(lái)判斷各種數(shù)據(jù)類(lèi)型,有兩種寫(xiě)法:typeof xxx ,typeof(xxx)
如下實(shí)例:
typeof 2 輸出 number
typeof null 輸出 object
typeof {} 輸出 object
typeof [] 輸出 object
typeof (function(){}) 輸出 function
typeof undefined 輸出 undefined
typeof '222' 輸出 string
typeof true 輸出 boolean
這里面包含了js里面的五種數(shù)據(jù)類(lèi)型 number string boolean undefinedobject和函數(shù)類(lèi)型 function
看到這里你肯定會(huì)問(wèn)了:我怎么去區(qū)分對(duì)象,數(shù)組和null呢?
接下來(lái)我們就用到另外一個(gè)利器:Object.prototype.toString.call
這是對(duì)象的一個(gè)原生原型擴(kuò)展函數(shù),用來(lái)更精確的區(qū)分?jǐn)?shù)據(jù)類(lèi)型。
我們來(lái)試試這個(gè)玩兒意兒:
var gettype=Object.prototype.toString
gettype.call('aaaa')輸出 [object String]
gettype.call(2222) 輸出 [object Number]
gettype.call(true) 輸出 [object Boolean]
gettype.call(undefined) 輸出 [object Undefined]
gettype.call(null) 輸出 [object Null]
gettype.call({}) 輸出 [object Object]
gettype.call([]) 輸出 [object Array]
gettype.call(function(){}) 輸出 [object Function]
看到這里,剛才的問(wèn)題我們解決了。
其實(shí)js 里面還有好多類(lèi)型判斷
[object HTMLDivElement] div 對(duì)象 ,
[object HTMLBodyElement] body 對(duì)象,
[object Document](IE)或者
[object HTMLDocument](firefox,google) ......
各種dom節(jié)點(diǎn)的判斷,這些東西在我們寫(xiě)插件的時(shí)候都會(huì)用到。
可以封裝的方法如下:
var gettype=Object.prototype.toString
var utility={
isObj:function(o){
return gettype.call(o)=="[object Object]";
},
isArray:function(o){
return gettype.call(o)=="[object Array]";
},
isNULL:function(o){
return gettype.call(o)=="[object Null]";
},
isDocument:function(){
return gettype.call(o)=="[object Document]"|| [object HTMLDocument];
}
........
}
以上這篇js 判斷各種數(shù)據(jù)類(lèi)型的簡(jiǎn)單方法(推薦)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- js 判斷數(shù)據(jù)類(lèi)型的幾種方法
- Javascript如何判斷數(shù)據(jù)類(lèi)型和數(shù)組類(lèi)型
- js的各種數(shù)據(jù)類(lèi)型判斷的介紹
- 利用JS判斷數(shù)據(jù)類(lèi)型的四種方法
- JavaScript中判斷數(shù)據(jù)類(lèi)型的方法總結(jié)
- JS中的四種數(shù)據(jù)類(lèi)型判斷方法
- JavaScript 判斷數(shù)據(jù)類(lèi)型的4種方法
- js和jquery判斷數(shù)據(jù)類(lèi)型的4種方法總結(jié)
- JS數(shù)據(jù)類(lèi)型判斷的幾種常用方法
- JS數(shù)據(jù)類(lèi)型判斷的9種方式總結(jié)
相關(guān)文章
Javascript實(shí)現(xiàn)倒計(jì)時(shí)時(shí)差效果
這篇文章主要為大家詳細(xì)介紹了Javascript實(shí)現(xiàn)倒計(jì)時(shí)時(shí)差效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-05-05
微信小程序?qū)崿F(xiàn)登錄頁(yè)云層漂浮的動(dòng)畫(huà)效果
微信小程序目前的火熱程度相信不用多言,最近利用空余時(shí)間用小程序?qū)崿F(xiàn)了個(gè)動(dòng)態(tài)的登錄頁(yè)效果,所以下面這篇文章主要給大家介紹了利用微信小程序?qū)崿F(xiàn)登錄頁(yè)云層漂浮動(dòng)畫(huà)效果的相關(guān)資料,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。2017-05-05
js和jquery批量綁定事件傳參數(shù)一(新豬豬原創(chuàng))
js綁定事件傳參,javascript綁定事件傳參數(shù),jquery綁定事件傳參數(shù)2010-06-06
微信小程序?qū)崿F(xiàn)列表?xiàng)l件篩選
這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)列表?xiàng)l件篩選,篩選框的效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-07-07
js自動(dòng)生成的元素與頁(yè)面原有元素發(fā)生堆疊的解決方法
js自動(dòng)生成的元素與頁(yè)面原有元素發(fā)生堆疊通過(guò)去除浮動(dòng),給原有元素(商品擴(kuò)展信息部分)加上clear:both; 果然正常了2013-10-10
JS實(shí)現(xiàn)按比例縮放圖片的方法(附C#版代碼)
這篇文章主要介紹了JS實(shí)現(xiàn)按比例縮放圖片的方法,結(jié)合實(shí)例形式較為詳細(xì)的分析了JavaScript實(shí)現(xiàn)等比例縮放圖片的原理與具體實(shí)現(xiàn)技巧,并附上C#版的圖片縮放代碼做對(duì)比參考,需要的朋友可以參考下2015-12-12

