← Все вопросы

Что такого важного появилось в ES6 (ECMAScript 2015)?

Задан 15 месяцев назад1.4к просмотров2 ответа
6

Постоянно слышу «это es6», «пиши на es6», но не понимаю, что именно за этим стоит. Учебник, по которому начинал, видимо, старый.

Что такого важного добавили в es 6 и стоит ли это вообще учить новичку, или можно по-старому? Хочется обзорно понять, что нового, чтобы не путаться в чужом коде.

2 ответа

10
✓ Принятый ответ — помог автору

ES6 (он же ECMAScript 2015) — это большое обновление языка, после которого JS реально похорошел. Сегодня весь современный код пишут именно в этом стиле, так что учить надо сразу его, по-старому смысла нет.

Кратко главное, что появилось:

let и const вместо var — нормальная блочная область видимости:

const PI = 3.14;   // нельзя переназначить
let count = 0;     // можно менять

Стрелочные функции — короткий синтаксис:

const double = x => x * 2;

Шаблонные строки — подстановка через ${} и обратные кавычки:

const name = 'Аня';
console.log(`Привет, ${name}!`);   // вместо 'Привет, ' + name + '!'

Деструктуризация — удобная распаковка:

const { age, city } = user;
const [first, second] = arr;

Спред ..., значения по умолчанию в параметрах:

const copy = [...arr];
function hi(name = 'Гость') { return `Привет, ${name}`; }

Классы (class), Promise для асинхронности, Map и Set как новые коллекции, модули (import/export).

Я намеренно не расписываю каждое подробно — про стрелки, деструктуризацию, let/const, Promise на сайте уже есть отдельные разборы, загляни туда. Тут главное понять масштаб: ES6 — это фундамент современного JS. После него были ES2016, ES2017 (async/await), и так далее каждый год, но именно ES6 — переломный.

3

Маленькое уточнение по поводу «можно ли по-старому». Учить именно ES6+ — однозначно да, потому что:

  • весь чужой код, который ты будешь читать, написан в этом стиле;
  • современные браузеры всё это понимают из коробки, никаких костылей не нужно;
  • старый стиль (var, конкатенация строк плюсиком) сейчас выглядит как привет из 2010-го.

Так что не трать время на устаревший синтаксис, бери сразу актуальный.

Ваш ответ

Войдите, чтобы ответить на вопрос.
Поддержать проект