Встречается на собеседованиях • сегодня
В чем разница между организации ООП в JavaScript от других языков программирования
В JavaScript ООП реализовано на основе прототипов, а не классов (хотя синтаксис class добавлен в ES6). Основные отличия:
- Прототипное наследование – объекты наследуют свойства и методы от других объектов через цепочку прототипов (
__proto__), а не через классы.
javascript
function Animal(name) {
this.name = name;
}
Animal.prototype.speak = function() {
console.log(`${this.name} makes a noise`);
};
function Dog(name) {
Animal.call(this, name);
}
Dog.prototype = Object.create(Animal.prototype);-
Динамичность – можно добавлять/удалять свойства и методы объектам и прототипам во время выполнения.
-
Отсутствие классических модификаторов доступа (private, protected), хотя есть соглашения (например,
_privateField) и современные возможности (символы, замыкания,#privateFieldв ES2022).

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