Sobes.tech
Middle
17

Является ли класс (class) в ES6 принципиально новой конструкцией или это синтаксический сахар над функцией-конструктором?

Companies where asked
AstonAston

Answer from AI

sobes.tech AI

В ES6 класс (class) — это синтаксический сахар над функциями-конструкторами и прототипным наследованием. Под капотом класс всё так же создаёт функцию-конструктор и методы на прототипе, но синтаксис более читаемый и похож на классы из других языков.

Пример:

class Person {
  constructor(name) {
    this.name = name;
  }
  greet() {
    console.log(`Привет, меня зовут ${this.name}`);
  }
}

// Аналог на ES5:
function Person(name) {
  this.name = name;
}
Person.prototype.greet = function() {
  console.log('Привет, меня зовут ' + this.name);
};