Встречается на собеседованиях • сегодня

Как определить является ли объект экземпляром определенного класса

В JavaScript можно использовать оператор instanceof для проверки, является ли объект экземпляром определенного класса. Он проверяет всю цепочку прототипов.

javascript
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

text

Важные нюансы:
1. Работает только с классами и функциям-конструкторами
2. Может давать ложные результаты при работе с разными контекстами (например, iframes)
3. Для примитивов всегда возвращает false

Альтернатива - проверка конструктора через `obj.constructor === Class`, но это менее надежно из-за возможного переопределения свойства constructor.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы