Ответ
Добавление функциональности в объект — это расширение его возможностей путем добавления новых методов или свойств. В JS это можно сделать несколькими способами:
- Через прототип (для конструкторов):
function Person(name) {
this.name = name;
}
Person.prototype.greet = function() {
console.log(`Hello, ${this.name}!`);
};
- Прямое добавление (для конкретного объекта):
const user = { name: 'Alex' };
user.sayHi = function() {
console.log(`Hi, ${this.name}`);
};
- Использование классов (ES6+):
class User {
constructor(name) {
this.name = name;
}
// Добавляем метод
greet() {
console.log(`Welcome, ${this.name}!`);
}
}
Важно: добавление методов через прототип экономит память, так как все экземпляры разделяют одну функцию, а не создают её копии.