欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

javascript中類型判斷的最佳方式

 更新時(shí)間:2022年06月21日 10:22:04   作者:小旭2021  
這篇文章介紹了javascript中類型判斷的最佳方式,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

javascript有8種數(shù)據(jù)類型

值類型

  • Number
  • Null
  • Undefined
  • String
  • Symbol
  • Boolean
  • BigInt

引用類型

  • Object
  • Array
  • Function

判斷數(shù)據(jù)類型有以下4種判斷方法

第一種方式:   typeof

typeof null   ---> "object"

 typeof undefined  ---> "undefined"

 typeof true | false  ---> 'boolean'

 typeof 42    ---> 'number'

 typeof "42" ---> 'string'

 typeof { name : '1'} | []  ---> 'object'

 typeof Symbol    ---> 'symbol'

 typeof ()=>{}       ---> 'function'

 typeof void 0      ---> 'undefined'

第二種方式  instanceof  但是這種方式只適合判斷object類型

instanceof運(yùn)算符用來判斷一個(gè)構(gòu)造函數(shù)的prototype屬性所指向的對(duì)象是否存在另外一個(gè)要檢測對(duì)象的原型鏈上

詳細(xì)介紹請(qǐng)看這里:javascript中的instanceof運(yùn)算符

比如 :
var arr = [] ;
arr instanceof Array   ---> true
null instanceof Object ---> false
[function] instanceof Object | Function  --> true

第三種方式  Object.prototype.toString.call()   這種方式可以將全部的數(shù)據(jù)類型檢測出來 也是 推薦的方式

因?yàn)閠oString是Object的原型方法, 而 Array Function 等都是Object的實(shí)例。都重寫了toString 方法。返回的是類型的字符串

Object.prototype.toString.call(null)  --->  [object Null]

 Object.prototupe.toString.call(undefined)  ---> [object Undefined]

 Object.prototype.toString.call(123)  ---> [object Number]

 Object.prototype.toString.call(true) ---> [object Boolean]

 Object.prototype.toString.call('123') ---> [object String]

 Object.prototype.toString.call({})    ---> [object Object]

 Object.prototype.toString.call([])    ---> [object Array]

 Object.prototype.toString.call(Math) ---> [object Math]

 Object.prototype.toString.call(function(){}) ---> [object Function]

 Objdec.prototype.toString.call(new Date)  ---> [object Date]

 Object.prototype.toString.call(Symbol())   ---> [object Symbol]

 第四種方式: constructor  判斷對(duì)象的構(gòu)造函。

1.  null 是js 原型鏈的起點(diǎn),沒有構(gòu)造函數(shù)

  2. undefined 沒有構(gòu)造函數(shù)

  3. [].constructor  === Array  ---> true

  4. [string].constructor === String

  5. [object].constructor === object

  6. [number].constructor === Number

  7. [symbol].constructor === Symbol

  8. [function].constructor === Function

  9. [new Date].constructor === Date

  10. [RegExp].constructor === RegExp

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • JavaScript實(shí)現(xiàn)移動(dòng)端簽字功能

    JavaScript實(shí)現(xiàn)移動(dòng)端簽字功能

    這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)移動(dòng)端簽字功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-10-10
  • JavaScript 預(yù)解析的4種實(shí)現(xiàn)方法解析

    JavaScript 預(yù)解析的4種實(shí)現(xiàn)方法解析

    這篇文章主要介紹了JavaScript 預(yù)解析的4種實(shí)現(xiàn)方法解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-09-09
  • javascript 瀏覽器檢測代碼精簡版

    javascript 瀏覽器檢測代碼精簡版

    javascript檢測瀏覽器精簡版,需要的朋友可以參考下。
    2010-03-03
  • JavaScript實(shí)現(xiàn)枚舉的幾種方法總結(jié)

    JavaScript實(shí)現(xiàn)枚舉的幾種方法總結(jié)

    在前端開發(fā)中,我們可能經(jīng)常需要用到枚舉,使用枚舉的好處是為了讓代碼的可讀性更強(qiáng),避免直接使用數(shù)字或未知的字符串,但是在JavaScript中,要自己實(shí)現(xiàn)一個(gè)枚舉功能,那么大家能想到多少種實(shí)現(xiàn)枚舉的方法呢,我將介紹幾種實(shí)現(xiàn)枚舉的好方法
    2023-08-08
  • JS SetInterval 代碼實(shí)現(xiàn)頁面輪詢

    JS SetInterval 代碼實(shí)現(xiàn)頁面輪詢

    setInterval 是一個(gè)實(shí)現(xiàn)定時(shí)調(diào)用的函數(shù),可按照指定的周期(以毫秒計(jì))來調(diào)用函數(shù)或計(jì)算表達(dá)式。下面通過本文給大家分享JS SetInterval 代碼實(shí)現(xiàn)頁面輪詢,感興趣的朋友一起看看吧
    2017-08-08
  • 悄悄用腳本檢查你訪問過哪些網(wǎng)站的代碼

    悄悄用腳本檢查你訪問過哪些網(wǎng)站的代碼

    YouPorn是YouTube的成人自拍版,Alexa排名61。如果你登陸YouPorn主頁,它會(huì)悄悄用腳本檢查你訪問過哪些色情網(wǎng)站。
    2010-12-12
  • 在 JavaScript 中用下劃線替換空格的方法

    在 JavaScript 中用下劃線替換空格的方法

    這篇文章主要介紹了在 JavaScript 中用下劃線替換空格的方法,本文通過示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-05-05
  • 原生js仿jquery一些常用方法(必看篇)

    原生js仿jquery一些常用方法(必看篇)

    下面小編就為大家?guī)硪黄鷍s仿jquery一些常用方法(必看篇)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-09-09
  • js中不常見的運(yùn)算符與操作符總結(jié)

    js中不常見的運(yùn)算符與操作符總結(jié)

    運(yùn)算符(operator)也被稱為操作符,是用于實(shí)現(xiàn)賦值、比較和執(zhí)行算數(shù)運(yùn)算等功能的符號(hào),這篇文章主要給大家介紹了關(guān)于js中不常見的運(yùn)算符與操作符的相關(guān)資料,需要的朋友可以參考下
    2021-06-06
  • js結(jié)合css實(shí)現(xiàn)登錄后才能復(fù)制的效果實(shí)例

    js結(jié)合css實(shí)現(xiàn)登錄后才能復(fù)制的效果實(shí)例

    很多網(wǎng)站都有登錄后才能復(fù)制的限制,什么原理呢?css屬性u(píng)ser-select:none,通常會(huì)采用這種方式來禁止復(fù)制文本。但瀏覽開發(fā)者工具-審查元素,取消此樣式后,就可以選中文本了。想要完整地禁止復(fù)制,還需要通過js控制選擇的內(nèi)容。
    2023-07-07

最新評(píng)論