js和jquery判斷數(shù)據(jù)類型的4種方法總結(jié)
1.typeof
typeof是一個(gè)運(yùn)算符,有2種使用方式:typeof(表達(dá)式)和typeof 變量名,第一種是對(duì)表達(dá)式做運(yùn)算,第二種是對(duì)變量做運(yùn)算。
此方法的返回結(jié)果只要以下幾種:
Number、String、undefined、Bollean、Object、Function
弊端在于如果數(shù)據(jù)類型為引用數(shù)據(jù)類型,他只能返回 Object
console.log(typeof 1); //number console.log(typeof true); //bollean console.log(typeof '歡喜'); //string console.log(typeof {}); //object console.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 中,判斷一個(gè)變量的類型嘗嘗會(huì)用 typeof 運(yùn)算符,在使用 typeof 運(yùn)算符時(shí)采用引用類型存儲(chǔ)值會(huì)出現(xiàn)一個(gè)問題,無論引用的是什么類型的對(duì)象,它都返回 “object”。ECMAScript 引入了另一個(gè) Java 運(yùn)算符 instanceof 來解決這個(gè)問題。instanceof 運(yùn)算符與 typeof 運(yùn)算符相似,用于識(shí)別正在處理的對(duì)象的類型。與 typeof 方法不同的是,instanceof 方法要求開發(fā)者明確地確認(rèn)對(duì)象為某特定類型。
A instanceof B 可以判斷A是不是B的實(shí)例,返回一個(gè)布爾值,由構(gòu)造類型判斷出數(shù)據(jù)類型
console.log(arr instanceof Array ); // true console.log(date instanceof Date ); // true console.log(fn instanceof Function ); // true
4.根據(jù)對(duì)象的 contructor 判斷
console.log(arr.constructor === Array); //true console.log(date.constructor === Date); //true console.log(fn.constructor === Function); //true
JQuery 中判斷數(shù)據(jù)類型的方法
返回一個(gè)布爾值
jQuery對(duì)象.isArray(); //判斷是否為數(shù)組 jQuery對(duì)象.isEmptyObject(); //判斷是否為空對(duì)象 jQuery對(duì)象.isFunction(): //判斷是否為函數(shù) jQuery對(duì)象.isNumberic(): //判斷是否為數(shù)字 jQuery對(duì)象.isWindow(): //判斷是否為window對(duì)象 jQuery對(duì)象.isXMLDoc(): //判斷判斷一個(gè)DOM節(jié)點(diǎn)是否處于XML文檔中
總結(jié)
到此這篇關(guān)于js和jquery判斷數(shù)據(jù)類型的4種方法的文章就介紹到這了,更多相關(guān)js和jquery判斷數(shù)據(jù)類型內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
JS支持帶x身份證號(hào)碼驗(yàn)證函數(shù)
身份證號(hào)碼驗(yàn)證-支持新的帶x身份證2008-08-08javascript之textarea打字機(jī)效果提示代碼推薦
非常不錯(cuò)的提示輸入內(nèi)容,動(dòng)態(tài)的提示,給人親切感2008-09-09使用JavaScript修改瀏覽器URL地址欄的實(shí)現(xiàn)代碼
這篇文章主要介紹了如何使用JavaScript修改瀏覽器URL地址欄,需要的朋友可以參考下2013-10-10js入門之Function函數(shù)的使用方法【新手必看】
本篇文章主要介紹js Function函數(shù)的使用方法,應(yīng)該對(duì)初學(xué)Js的朋友們會(huì)有所幫助,下面就隨小編一起來看下吧2016-11-11JavaScript實(shí)現(xiàn)的圓形浮動(dòng)標(biāo)簽云效果實(shí)例
這篇文章主要介紹了JavaScript實(shí)現(xiàn)的圓形浮動(dòng)標(biāo)簽云效果,涉及javascript字符串與數(shù)組的遍歷、排序操作以及元素樣式動(dòng)態(tài)操作與數(shù)學(xué)運(yùn)算等相關(guān)技巧,是非常實(shí)用的一段代碼,需要的朋友可以參考下2015-08-08javascript for循環(huán)設(shè)法提高性能
讓你的for循環(huán)提升性能的寫法,需要的朋友可以參考下。2010-02-02原生JS實(shí)現(xiàn)匯率轉(zhuǎn)換功能代碼實(shí)例
這篇文章主要介紹了原生JS實(shí)現(xiàn)匯率轉(zhuǎn)換功能代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-05-05