<menu id="ycqsw"></menu><nav id="ycqsw"><code id="ycqsw"></code></nav>
<dd id="ycqsw"><menu id="ycqsw"></menu></dd>
  • <nav id="ycqsw"></nav>
    <menu id="ycqsw"><strong id="ycqsw"></strong></menu>
    <xmp id="ycqsw"><nav id="ycqsw"></nav>
  • js判斷變量類型使用什么方法(let和var和const區別)


    JavaScript 如何判斷一個變量是否為數組類型

    • 引言
    • 正文
    • 方法一方法二方法三方法四方法五方法六方法七
    • 結束語

    引言

    我們如何判斷一個變量是否為數組類型呢? 今天來給大家介紹七種方式,別走開, 這肯定會被問到的~繼續往下看吧

    正文

    首先先告訴你們, typeof 是無法判斷一個變量是否為數組類型的,我們來看一下例子:

    let arr = [1, 2, 3]
    console.log(typeof arr)
    
    //  object     最后輸出的是object對象
    1234

    方法一

    使用 instanceof 運算符, 該運算符左邊是我們想要判斷的變量, 右邊則是我們想要判斷的對象的類, 例如:

    let arr = [1, 2, 3]
    console.log(arr instanceof Array)
    
    //  true     返回true,說明變量arr是數組類型
    1234

    方法二

    利用構造函數來判斷他的原型是否為Array, 用法: 變量.constructor === 變量類型

    let arr = [1, 2, 3]
    console.log(arr.constructor === Array)
    
    //  true     返回true,說明變量arr是數組類型
    1234

    方法三

    第三種方法利用的一個專門的方法 isArray(), 用法:Array.isArray(變量),返回true,則說明該變量是數組類型;反之,說明該變量不是數組類型

    let arr = [1, 2, 3]
    console.log(Array.isArray(arr))
    
    //  true     返回true,說明變量arr是數組類型
    1234

    方法四

    第四種方法是調用Object.prototype.toString.call(),返回true,則說明該變量是數組類型;反之,說明該變量不是數組類型

    let arr = [1, 2, 3]
    console.log(Object.prototype.toString.call(arr) === '[object Array]')
    
    //  true     返回true,說明變量arr是數組類型
    1234

    方法五

    第五種方式是通過對象的原型方式來判斷,直接來看例子

    let arr = [1, 2, 3]
    console.log(arr.__proto__ === Array.prototype)
    
    //  true     返回true,說明變量arr是數組類型
    1234

    方法六

    第六種方式是通過 Object.getPrototypeOf()來判斷是否為數組類型,例如

    let arr = [1, 2, 3]
    console.log(Object.getPrototypeOf(arr) === Array.prototype)
    
    //  true     返回true,說明變量arr是數組類型
    1234

    方法七

    第七種方式是通過 isPrototypeOf() 方法來判斷是否為數組類型,例如

    let arr = [1, 2, 3]
    console.log(Array.prototype.isPrototypeOf(arr))
    
    //  true     返回true,說明變量arr是數組類型
    1234

    結束語

    當你面試中被問到如何判斷一個變量是否為數組類型的時候,你就將這七種方式脫口而出吧, 一定會讓面試官大吃一斤的~

    版權聲明:本文內容由互聯網用戶自發貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發現本站有涉嫌抄襲侵權/違法違規的內容, 請發送郵件至 舉報,一經查實,本站將立刻刪除。

    發表評論

    登錄后才能評論
    国产精品区一区二区免费