中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

js的各種數據類型判斷的介紹

發布時間:2020-10-04 14:12:03 來源:腳本之家 閱讀:155 作者:muzidigbig 欄目:web開發

1.typeof

typeof 用來判斷各種數據類型,有兩種寫法:typeof xxx , typeof(xxx)

例如:

typeof 2 輸出 number 
typeof null 輸出 object 
typeof {} 輸出 object 
typeof [] 輸出 object 
typeof (function(){}) 輸出 function 
typeof undefined 輸出 undefined 
typeof '222' 輸出 string 
typeof true 輸出 boolean

這里面包含了js里面的五種數據類型 number、string、boolean、 undefined、object 和函數類型 function

2. instanceof

判斷已知對象類型的方法.instanceof 后面一定要是對象類型,并且大小寫不能錯,該方法適合一些條件選擇或分支。

  var c= [1,2,3]; 
  var d = new Date(); 
  var e = function(){alert(111);}; 
  var f = function(){this.name="22";}; 
  console.log(c instanceof Array) //true
  console.log(d instanceof Date) //true
  console.log(e instanceof Function) //true
  // console.log(f instanceof function ) //false

3.constructor

根據對象的constructor判斷,返回對創建此對象的數組函數的引用。

var c= [1,2,3]; 
var d = new Date(); 
var e = function(){alert(111);}; 
alert(c.constructor === Array) ----------> true 
alert(d.constructor === Date) -----------> true 
alert(e.constructor === Function) -------> true 
//注意: constructor 在類繼承時會出錯

4.prototype

所有數據類型均可判斷:Object.prototype.toString.call

這是對象的一個原生原型擴展函數,用來更精確的區分數據類型。

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]

其實js 里面還有好多類型判斷 [object HTMLDivElement] div 對象 , [object HTMLBodyElement] body 對象 ,[object Document](IE)或者 [object HTMLDocument](firefox,google) ……各種dom節點的判斷,這些東西在我們寫插件的時候都會用到。

可以封裝的方法如下:

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]; 
  } 
  ........ 
}

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對億速云的支持。如果你想了解更多相關內容請查看下面相關鏈接

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

清河县| 苗栗县| 乌什县| 阳城县| 嘉定区| 集贤县| 萍乡市| 邢台市| 钟祥市| 白水县| 大邑县| 淮安市| 石景山区| 兴业县| 义乌市| 东丰县| 蚌埠市| 东乡族自治县| 金乡县| 舟曲县| 淮滨县| 衡山县| 铜川市| 高平市| 武乡县| 沁源县| 莆田市| 亚东县| 华容县| 沈阳市| 交城县| 永平县| 赣州市| 江华| 玉林市| 五河县| 定结县| 岫岩| 广德县| 沙坪坝区| 海门市|