class
Объявляет класс — шаблон для создания объектов с общими методами.
Доступно с: ES2015
Синтаксис
class Name { constructor() { … } method() { … } }Примеры
Класс с конструктором и методом:
class User {
constructor(name) {
this.name = name;
}
greet() {
return `Hi, I am ${this.name}`;
}
}
const anna = new User('Anna');
console.log(anna.greet());Результат:
Hi, I am AnnaПоля класса со значением по умолчанию:
class Counter {
count = 0;
increment() {
this.count++;
return this;
}
}
const counter = new Counter();
counter.increment().increment();
console.log(counter.count);Результат:
2Примечания
constructor вызывается автоматически при new и заполняет свойства объекта. Методы класса общие для всех его объектов и не копируются в каждый.
Код внутри класса всегда работает в строгом режиме. Класс нельзя вызвать без new.
См. также
- new — Создаёт новый объект с помощью класса или функции-конструктора.
- extends — Создаёт класс-наследник, который получает свойства и методы родителя.
- static — Метод или свойство самого класса, а не его объектов.
- Private fields (#) — Поля и методы, доступные только внутри класса.
- get / set — Свойства, за которыми скрываются функции: чтение вызывает get, запись — set.
В учебнике
- Классы и объекты — Классы в JavaScript: объявление класса, конструктор, поля, методы, this и создание объектов через new.