Встречается на собеседованиях • сегодня
В чем разница между классовым и прототипным наследованием
Классовое наследование использует классы как шаблоны для создания объектов. Наследование происходит через цепочку классов (extends). В JS это синтаксический сахар над прототипами.
Прототипное наследование - объекты наследуют напрямую от других объектов через свойство __proto__. Каждый объект имеет скрытую ссылку на прототип.
Пример классового:
js
class Parent {
greet() { return 'Hi' }
}
class Child extends Parent {}Пример прототипного:
js
const parent = { greet: () => 'Hi' };
const child = Object.create(parent);Ключевые отличия:
- В классах наследование декларативное, в прототипах - динамическое
- Классы имеют конструктор, статические методы
- Прототипы гибче - можно менять цепочку наследования в runtime

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы