Цепочка наследования, как? Привет! Подскажите пожалуйста, как реализовать наследование type из SomePencil в AnotherPencil? Спасибоclass Pencil {
constructor(color) {
this.color = color;
}
intro() {
console.log(`this is ${this.color} pencil`);
}
};
class SomePencil extends Pencil {
constructor(color, type) {
super(color);
this.type = type;
}
};
class AnotherPencil extends SomePencil {
constructor(color,) {
super(color);
}
};
let pen1 = new Pencil();
let pen2 = new SomePencil("red", "common");
let pen3 = new AnotherPencil("green");
console.log("type" in pen3); // true

21 Авг 2019 в 06:59
218 +1
0
Ответы
1

Для реализации наследования типа из класса SomePencil в класс AnotherPencil вам нужно передавать значение свойства "type" при вызове super в конструкторе AnotherPencil. Вот как это можно сделать:

class AnotherPencil extends SomePencil {
constructor(color, type) {
super(color, type);
}
};
let pen1 = new Pencil();
let pen2 = new SomePencil("red", "common");
let pen3 = new AnotherPencil("green", "mechanical");
console.log("type" in pen3); // true

Теперь при создании экземпляра AnotherPencil вы передаете также значение "type" и проверка на наличие свойства "type" вернет значение true.

20 Апр 2024 в 13:10
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир