instanceof
Проверяет, создан ли объект классом (или его наследником).
Доступно с: ES3
Синтаксис
object instanceof ConstructorПримеры
Экземпляр класса и его родителя:
class Animal {}
class Dog extends Animal {}
const rex = new Dog();
console.log(rex instanceof Dog);
console.log(rex instanceof Animal);
console.log(rex instanceof Array);Результат:
true
true
falseРазные виды ошибок в catch:
try {
JSON.parse('{');
} catch (error) {
if (error instanceof SyntaxError) console.log('Bad JSON');
else throw error;
}Результат:
Bad JSONПримечания
С примитивами оператор не работает: 'text' instanceof String даёт false. Для них используйте typeof.
См. также
- typeof — Возвращает строку с типом значения.
- class — Объявляет класс — шаблон для создания объектов с общими методами.
- extends — Создаёт класс-наследник, который получает свойства и методы родителя.
- Object.getPrototypeOf — Возвращает прототип объекта.
Вопросы и ответы по теме
В учебнике
- Наследование — Наследование классов в JavaScript — extends, super, переопределение методов и instanceof.