Этот сайт использует cookies. Продолжение работы с сайтом означает, что Вы согласны!
Оператор instanceof
С помощью оператора instanceof
можно проверить принадлежность экземпляра какому-либо классу:
let k = new Number(8);
if ( (typeof k === 'object') && (k instanceof Number) )
console.log('Экземпляр k принадлежит классу Number');
else console.log('Нет');
Оператор instanceof
проверяет также цепочку наследования (листинг 11.14).
Листинг 11.14. Оператор instanceof
class A {
constructor(_a) {
this.a = _a;
}
}
class B extends A {
constructor(_a, _b) {
super(_a);
this.b = _b;
}
}
let objB = new B(10, 55);
console.log(objB instanceof B); // true
console.log(objB instanceof A); // true
let objA = new A(6);
console.log(objA instanceof A); // true
console.log(objA instanceof B); // false
console.log( A.prototype.isPrototypeOf(objB) ); // true
console.log( B.prototype.isPrototypeOf(objB) ); // true
console.log( A.prototype.isPrototypeOf(objA) ); // true
let objC = {};
console.log( A.prototype.isPrototypeOf(objC) ); // false
В этом примере мы воспользовались методом isPrototypeOf(<Объект>)
, который возвращает значение true
, если прототип входит в цепочку наследования объекта <Объект>
, и false
— в противном случае.
Помощь сайту
ЮMoney (Yandex-деньги): 410011140483022
ПАО Сбербанк:
Счет: 40817810855006152256
Реквизиты банка:
Наименование: СЕВЕРО-ЗАПАДНЫЙ БАНК ПАО СБЕРБАНК
Корреспондентский счет: 30101810500000000653
БИК: 044030653
КПП: 784243001
ОКПО: 09171401
ОКОНХ: 96130
Скриншот реквизитов