JS中的 Instanceof

<h4> Instanceof 的功能類似與 typeof </h4>
對于值類型,你可以通過typeof判斷,string/number/boolean都很清楚,但是typeof在判斷到引用類型的時候,返回值只有object/function,你不知道它到底是一個object對象,還是數(shù)組,還是new Number等等。

nstanceof運(yùn)算符的第一個變量是一個對象,暫時稱為A;第二個變量一般是一個函數(shù),暫時稱為B。

Instanceof的判斷隊(duì)則是:沿著A的proto這條線來找,同時沿著B的prototype這條線來找,如果兩條線能找到同一個引用,即同一個對象,那么就返回true。如果找到終點(diǎn)還未重合,則返回false。

<h3>分別舉栗子</h3>

<strong> typeof 判斷類型是什么,比如:</strong>

var a = 1;
var b = {};
var c = [];
function d() {

}

console.log(typeof (a));
console.log(typeof (b));
console.log(typeof (c));
console.log(typeof (d));

輸出結(jié)果:


jianshu.png

<strong>Instanceof 是判斷一個對象是否為某一數(shù)據(jù)類型,舉栗子:</strong>

function test() {

}
console.log(test instanceof Function);
console.log(Function instanceof test);

結(jié)果:

jianshu.png

<h6>看了好多文檔,得出結(jié)論 Instanceof 用在原型鏈這邊會更方便。<h6>

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容