Когда мне нужно вызвать `super` из конструктора?
чтениеБлог доктора Акселя Раушмайера о классах ES6Я понимаю, что у производного класса есть следующий конструктор по умолчанию, когда ни один не предоставлен
constructor(...args) {
super(...args);
}
Я также понимаю, что если я хочу использоватьthis
в конструкторе мне сначала нужно позвонитьsuper
, иначеthis
еще не будет инициализирован (выбрасывая ReferenceError).
constructor(width, height) {
this.width = width; // ReferenceError
super(width, height);
this.height = height; // no error thrown
...
}
Правильно ли следующее предположение? (и если нет, не могли бы вы объяснить условия, при которых я долженsuper
)
Для производных классов мне нужно только явно вызватьsuper
когда...
this
из конструктораКонструктор суперкласса требует других аргументов, чем конструктор производного классаЕсть ли другие случаи, когда я должен включать вызов конструктора суперкласса?