javascript--- hasOwnProperty、instanceof 、typeof的區別

  typeof數組

    做用:用來判斷變量的類型  函數

    返回值: string  只有如下幾種:number、boolean、string、object、undefined、function[很容易漏掉這個]spa

    形式: typeof  aprototype

  instanceofcode

    做用:用來判斷變量是不是函數或者是對象(instanceof 有繼承的意思,繼承於Object、Array、Function)  instanceof只能用來判斷對象和函數,不能用來判斷字符串和數字(會返回false)等 ----(爲何不能呢?)對象

    返回值:booleanblog

    形式: a instanceof  Object  /  b instanceof  Array繼承

  constructor原型鏈

    當咱們使用js系統或者本身建立的對象的時候,會默認的加上的屬性字符串

    好比:

var arr = [1,2,3];  //建立一個數組對象
arr.prototype.constructor = Array;  //這一句是系統默認加上的

    因此咱們就能夠這樣來判斷:

var arr = [1,2,3,1]; 
alert(arr.constructor === Array);   // true

  hasOwnProperty

    hasOwnProperty是一個函數, 該函數用於指示一個對象自身(不包括原型鏈)是否具備指定名稱的屬性。若是有,返回true,不然返回false。該方法屬於Object對象,因爲全部的對象都"繼承"了Object的對象實例,所以幾乎全部的實例對象均可以使用該方法。

相關文章
相關標籤/搜索