Проверяет, является ли объект экземпляром указанного класса или конструктора, проверяя цепочку прототипов.
Оператор instanceof в JavaScript используется для проверки, принадлежит ли объект к определённому классу или функции-конструктору. Он проверяет цепочку прототипов объекта на наличие свойства prototype указанного конструктора.
Когда вы пишете obj instanceof Constructor, JavaScript проходит по цепочке прототипов объекта obj и сравнивает каждый прототип с Constructor.prototype. Если совпадение найдено, возвращается true, иначе false.
class Animal {}
class Dog extends Animal {}
const dog = new Dog();
console.log(dog instanceof Dog); // true
console.log(dog instanceof Animal); // true
console.log(dog instanceof Object); // true
const obj = {};
console.log(obj instanceof Dog); // falsefalsetypeofВывод: instanceof — это надёжный способ проверки принадлежности объекта к классу в иерархии наследования, особенно полезный при работе с пользовательскими классами и наследованием в JavaScript.
Frontend developer
Ментор по Frontend
Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства
Записаться на консультацию