Какие нововведения были в ES6?
Современный JS ES6+
ES6 (ECMAScript 2015) — крупнейшее обновление JavaScript, добавившее `let`/`const`, стрелочные функции, классы, промисы, модули, деструктуризацию, шаблонные строки и многое другое.
Нововведения
Переменные
let и const — блочная область видимости вместо функциональной var.
Стрелочные функции
const add = (a, b) => a + b; // компактно, лексический thisКлассы
class User { constructor(name) { this.name = name; } }Синтаксический сахар над прототипами.
Промисы
Управление асинхронностью вместо callback hell.
Модули
import/export — стандартная модульность.
Деструктуризация
const { name, age } = user;
const [first, ...rest] = arr;Шаблонные строки
`Привет, ${name}`;Spread/Rest
const copy = [...arr];
function sum(...nums) {}Прочее
- Значения параметров по умолчанию.
Map,Set,WeakMap,WeakSet.Symbol.- Итераторы и генераторы (
function*,for...of). - Вычисляемые свойства объектов, сокращённые методы.
Значение
ES6 сделал JavaScript зрелым языком; после него обновления выходят ежегодно (ES2016+).
Коротко для собеседования
ES6 (2015): let/const (блочная область), стрелочные функции, классы, промисы, модули (import/export), деструктуризация, шаблонные строки, spread/rest, параметры по умолчанию, Map/Set, Symbol, генераторы, for...of. Крупнейшее обновление; далее — ежегодные версии.