JS手寫instanceof實現方式

2021-10-11 17:48:46 字數 502 閱讀 2385

// 使用方式

function

car(color)

}// const cc = new car('red')

// console.log(cc instanceof car)

/** * 重點是分為基本資料型別和引用資料型別判斷

* 引用資料型別中,需要判斷物件(child)的原型鏈是否相等

* @param child 例項化物件

* @param parentfn 建構函式(類)

* @returns true/false

*/function

myinstanceof

(child, parentfn)

}const cc =

newcar

('red'

)console.

log(

myinstanceof

(cc, car)

)

手寫乙個instanceof

示例 a instanceof b 檢測a的原型鏈 proto 上是否有b.prototype,若有返回true,否則false 每次不斷迴圈,拿出a的原型,然後再拿出原型指向的構造方法,然後判斷一下是不是b。如果a繼承b,然後用b例項化a,然後a instanceof a 會返回true,因為沿著...

JS基礎 instanceof詳解

instanceof 運算子用於檢測建構函式的 prototype 屬性是否出現在某個例項物件的原型鏈上。語法 object instanceof constructor 引數object 某個例項物件 constructor 某個建構函式 定義建構函式 function c function d ...

js高階 探索instanceof

a instanceof a 作用 判斷左邊這個物件a 例項或屬性 是不是右邊這個型別 建構函式 a的例項,左邊一般是物件的屬性或物件的例項,右邊一般是建構函式或物件,主要是通過左邊的例項的隱式原型屬性一直往原型鏈中找,一直都是通過原型物件的隱式原型屬性往原型鏈中找,右邊也通過建構函式的顯示原型屬性...