Я искал ES6, потому что, похоже, это продвигается при написании приложений responseJS. Я был немного удивлен, как работают конструкторы:Наследование конструктора ES6
class Human{
constructor(name){
this.name = name;
}
toString(){
return "Name = " + this.name;
}
}
class Person extends Human{}
var person = new Person("kim");
Насколько велико вероятность того, что один из следующих может сделать мое приложение хрупким при написании переднего конца приложения в JS с использованием системы на основе класса:
- Параметрированные конструкторы неявно унаследованы (это хорошая идея в целом и какова вероятность того, что она останется такой?);
- Невозможно перегрузить конструкторы в пределах одного класса;
- Невозможность перегрузки по типам параметров;
Дополнительный вопрос:
вторичный вопрос у меня есть о том, как умно решение было бы использовать ES6 для крупных производственных приложений сегодня, и если это полезно использовать только ES6 для экспериментов на данный момент. Я не уверен, что неуместно думать, что JS стремится к полноценной системе на основе классов, такой как Java, и что вещи могут меняться (эволюционировать) быстрее, чем моя база кода сможет переварить.
Что вы подразумеваете под "хрупким"? – Bergi
Как есть «инвалидность к перегрузке»? – Bergi
@Bergi В Java мы научились всегда вызывать конструктор, который предоставляет большинство параметров, например. 'Classname (name, 0, 0)' от конструкторов с меньшими параметрами. Не знаете, каковы последствия, если возможности там нет, и какова вероятность того, что мне понадобится перезаписать мой код, когда в будущем появится больше функций. – Trace