Что такое добавление функциональности в объект

Ответ

Добавление функциональности в объект — это расширение его возможностей путем добавления новых методов или свойств. В JS это можно сделать несколькими способами:

  1. Через прототип (для конструкторов):
function Person(name) {
  this.name = name;
}
Person.prototype.greet = function() {
  console.log(`Hello, ${this.name}!`);
};
  1. Прямое добавление (для конкретного объекта):
const user = { name: 'Alex' };
user.sayHi = function() {
  console.log(`Hi, ${this.name}`);
};
  1. Использование классов (ES6+):
class User {
  constructor(name) {
    this.name = name;
  }

  // Добавляем метод
  greet() {
    console.log(`Welcome, ${this.name}!`);
  }
}

Важно: добавление методов через прототип экономит память, так как все экземпляры разделяют одну функцию, а не создают её копии.