instanceof 操作符用于檢查對象是否屬于某個類的實例,語法為:object instanceof constructor,其中 object 是要檢查的對象,constructor 是要檢查其實例的對象的構造函數。如果 object 是 constructor 的實例,則返回 true,否則返回 false。
instanceof 操作符在 JavaScript 中的用法
JavaScript 中的 instanceof 操作符用于檢查一個對象是否屬于某個類的實例。
語法:
<code>object instanceof constructor</code>
登錄后復制
其中:
object 是要檢查的對象。
constructor 是要檢查其實例的對象的構造函數。
返回值:
如果 object 是 constructor 的實例,則返回 true。
否則返回 false。
示例:
<code class="js">const person = new Person(); console.log(person instanceof Person); // true console.log(person instanceof Object); // true console.log(person instanceof Array); // false</code>
登錄后復制
詳細解釋:
instanceof 操作符檢查 object 的原型鏈是否可以追溯到 constructor 的 prototype 屬性。
如果可以追溯,則 object 是 constructor 的實例,返回 true。
如果無法追溯,則 object 不是 constructor 的實例,返回 false。
注意:
所有對象都是 Object 的實例,因此 instanceof Object 通常返回 true。
null 和 undefined 不是任何類的實例,因此 instanceof 操作符始終返回 false。
實例檢查的用途:
instanceof 操作符可用于以下用途:
驗證對象類型(例如,確保函數傳遞的參數是所需的類型)。
檢查對象是否屬于某個類的子類(例如,確定 Rectangle 對象是否也是 Shape 對象)。
執行多態行為(例如,根據對象的類型調用不同的方法)。






