Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про JavaScript: super, constructor, extends, inheritance, class

Что делает super() в конструкторе дочернего класса?

Проверяет понимание вызова конструктора родительского класса в наследовании JavaScript.

Короткий ответ

super() вызывает конструктор родительского класса. Это необходимо, чтобы унаследовать свойства и методы родителя. Без вызова super() в конструкторе дочернего класса возникнет ошибка. super() должен быть вызван до использования this.

Длинный ответ

Назначение super()

Ключевое слово super используется для вызова функций, принадлежащих родительскому объекту. В контексте конструктора дочернего класса super() обязательно вызывается, чтобы инициализировать часть объекта, унаследованную от родителя. Это гарантирует, что this в дочернем классе будет корректно настроен.

Пример кода

class Animal {
  constructor(name) {
    this.name = name;
  }
}

class Dog extends Animal {
  constructor(name, breed) {
    super(name); // вызывает Animal constructor
    this.breed = breed;
  }
}

const myDog = new Dog('Rex', 'Labrador');
console.log(myDog.name); // Rex

Правила использования

  • В конструкторе дочернего класса super() должен быть вызван до первого обращения к this.
  • Если не вызвать super(), JavaScript выдаст ошибку ReferenceError.
  • Можно передавать аргументы в super(), которые будут переданы конструктору родителя.

Вывод

Вызов super() обязателен в конструкторах классов-наследников для корректной инициализации унаследованных свойств. Это основа работы с наследованием в ES6 классах.

Frontend developer

tech
tech
tech
tech
tech
tech
tech
tech
tech

Ментор по Frontend

Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства

Записаться на консультацию

Уровень

  • Рейтинг:

    4

  • Сложность:

    3

Навыки

  • JavaScript

    JavaScript

Ключевые слова

#super

#constructor

#extends

#inheritance

#class

Подпишись на React Developer в телеграм

Frontend developer

tech
tech
tech
tech
tech
tech
tech
tech
tech

Ментор по Frontend

Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства

Записаться на консультацию