В чем разница между классом и объектом

«В чем разница между классом и объектом» — вопрос из категории JavaScript, который задают на 10% собеседований Frontend Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Класс — это шаблон или чертеж, описывающий структуру и поведение. Он определяет свойства (поля) и методы (функции), но не содержит конкретных данных.

Объект — это экземпляр класса, созданный на основе этого шаблона. Он уже содержит конкретные данные и может взаимодействовать с методами.

Пример:

class Car { // класс
  constructor(model) {
    this.model = model; // свойство
  }
  drive() { // метод
    console.log(`${this.model} is driving`);
  }
}

const myCar = new Car('Tesla'); // объект
myCar.drive(); // "Tesla is driving"

Класс — это абстракция, объект — конкретная реализация. Можно создать множество объектов одного класса.