Как перекрыть свойства класса?

При создании объекта, применяется свойства родителя в конструкторе, а не вызванного класса.
Разве так и должно быть? Как тогда перекрыть свойства не создавая конструктор?
class Element {
  _collectionName = null;

  constructor () {
    console.log(this._collectionName);
  }
}
class Users extends Element {
  _collectionName = 'users';
}

const users = new Users();

/* console.log - null */
  • Вопрос задан
  • 177 просмотров
Пригласить эксперта
Ответы на вопрос 2
@AleksRap
console.log вызывается в контексте родителя, напишите свой конструктор для дочернего элемента (не забудьте про super) с console.log
Ответ написан
locky_yotun
@locky_yotun Куратор тега JavaScript
Я видел некоторый джаваскрипт
В вашем варианте все равно есть конструктор у дочернего класса, просто он "неявный"
Посмотрите, во что ваш код транспилируется
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы