js和jquery判斷數(shù)據(jù)類型的4種方法總結(jié)
1.typeof
typeof是一個運(yùn)算符,有2種使用方式:typeof(表達(dá)式)和typeof 變量名,第一種是對表達(dá)式做運(yùn)算,第二種是對變量做運(yùn)算。
此方法的返回結(jié)果只要以下幾種:
Number、String、undefined、Bollean、Object、Function
弊端在于如果數(shù)據(jù)類型為引用數(shù)據(jù)類型,他只能返回 Object
console.log(typeof 1); //numberconsole.log(typeof true); //bolleanconsole.log(typeof ’歡喜’); //stringconsole.log(typeof {}); //objectconsole.log(typeof []); //object
2.toString.call()
console.log(toString.call(666)); //[object Number]console.log(toString.call(true)); //[object Boolean]console.log(toString.call(’歡喜’)); //[object String]console.log(toString.call(undefined)); //[object Undefined]console.log(toString.call({})); //[object Object]console.log(toString.call([])); //[object Array]console.log(toString.call(function(){})); //[object Function]
3.instanceof
在 JavaScript 中,判斷一個變量的類型嘗嘗會用 typeof 運(yùn)算符,在使用 typeof 運(yùn)算符時采用引用類型存儲值會出現(xiàn)一個問題,無論引用的是什么類型的對象,它都返回 “object”。ECMAScript 引入了另一個 Java 運(yùn)算符 instanceof 來解決這個問題。instanceof 運(yùn)算符與 typeof 運(yùn)算符相似,用于識別正在處理的對象的類型。與 typeof 方法不同的是,instanceof 方法要求開發(fā)者明確地確認(rèn)對象為某特定類型。
A instanceof B 可以判斷A是不是B的實(shí)例,返回一個布爾值,由構(gòu)造類型判斷出數(shù)據(jù)類型
console.log(arr instanceof Array ); // trueconsole.log(date instanceof Date ); // trueconsole.log(fn instanceof Function ); // true
4.根據(jù)對象的 contructor 判斷
console.log(arr.constructor === Array); //trueconsole.log(date.constructor === Date); //trueconsole.log(fn.constructor === Function); //true
JQuery 中判斷數(shù)據(jù)類型的方法
返回一個布爾值
jQuery對象.isArray(); //判斷是否為數(shù)組jQuery對象.isEmptyObject(); //判斷是否為空對象jQuery對象.isFunction(): //判斷是否為函數(shù)jQuery對象.isNumberic(): //判斷是否為數(shù)字jQuery對象.isWindow(): //判斷是否為window對象jQuery對象.isXMLDoc(): //判斷判斷一個DOM節(jié)點(diǎn)是否處于XML文檔中
總結(jié)
到此這篇關(guān)于js和jquery判斷數(shù)據(jù)類型的4種方法的文章就介紹到這了,更多相關(guān)js和jquery判斷數(shù)據(jù)類型內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. XML入門的常見問題(三)2. HTTP協(xié)議常用的請求頭和響應(yīng)頭響應(yīng)詳解說明(學(xué)習(xí))3. ASP將數(shù)字轉(zhuǎn)中文數(shù)字(大寫金額)的函數(shù)4. XML在語音合成中的應(yīng)用5. .NET Framework各版本(.NET2.0 3.0 3.5 4.0)區(qū)別6. jscript與vbscript 操作XML元素屬性的代碼7. 不要在HTML中濫用div8. php使用正則驗(yàn)證密碼字段的復(fù)雜強(qiáng)度原理詳細(xì)講解 原創(chuàng)9. ASP基礎(chǔ)入門第四篇(腳本變量、函數(shù)、過程和條件語句)10. HTML5實(shí)戰(zhàn)與剖析之觸摸事件(touchstart、touchmove和touchend)
