ES6 изменил систему наследования в JavaScript, введя поддержку классов. 1 Это, по сути, «синтаксический сахар» вокруг внутренних механизмов JS, использующих прототипы. 1
Некоторые изменения системы наследования:
- Использование ключевых слов extends и super. 24 extends позволяет создавать новый класс, который наследует свойства и методы от другого класса. 3 super помогает обращаться к родительскому классу из классов-потомков. 1
- Инициализация переменных экземпляров. 1 В JS-классах нельзя объявлять переменные экземпляров, их нужно инициализировать в конструкторах. 1
- Сокрытие методов. 2 В производный класс можно добавить метод с тем же именем, что и метод в базовом классе. 2 При вызове этого метода производного класса он будет затенять, скрывать метод в базовом классе. 2
Таким образом, ES6 сделал процесс наследования более понятным и удобным для разработчиков, привыкших к ООП. 4