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的對象實例,所以幾乎全部的實例對象均可以使用該方法。