ECMAScript 2015 (ES2015, ES6, Harmony) — это крупное обновление стандарта ECMAScript с 2009 года. ES6 представляет множество новых функций, таких как стрелочные функции, объявление класса и собственный Promise. Большинство из них — синтаксический сахар, который не только экономит нам количество нажатий клавиш, но и делает наш код более лаконичным.

ES6 официально завершен 17 июня 2015 года. Поскольку он уже завершен, мы будем видеть все больше и больше библиотек и примеров, которые будут написаны на ES6, так что будьте готовы к изменениям!

Вы можете найти полную спецификацию ECMAScript 2015 в формате PDF и HTML на ecma-international.org.

Новые функции ES6

  • Стрелы и лексическое это
  • Классы
  • Расширенные литералы объектов
  • Строки шаблона
  • Разрушение
  • По умолчанию + отдых + спред
  • Пусть + Конст
  • Итераторы + for…of
  • Генераторы
  • Понимание
  • Юникод
  • Модули
  • Карта + Набор + WeakMap + WeakSet
  • Прокси
  • Символы
  • Встроенные подклассы
  • Математика + Число + Строка + Объектные API
  • Двоичные и восьмеричные литералы
  • Обещания
  • API отражения
  • Хвостовые вызовы

Посмотреть основные моменты можно здесь.

Используйте ES6 сегодня

Если вам интересно, когда вы сможете начать использовать сияющие функции, ответ — сейчас! Поддержка браузера/среды выполнения (полный список здесь) на момент написания:

  • Преимущество 13–84%
  • FF 42–71%
  • Хром 46–63%
  • NodeJS 5,0–59%

Да, IE (ok Edge) возглавляет список благодаря потрясающей совместимости 84%!

Звучит многообещающе, но мы не можем игнорировать пользователей старых браузеров. Не бойтесь, мы все еще можем писать на ES6 с помощью компиляторов. Такие компиляторы, как Babel и Tranceur, транспилируют код ES6 в его эквивалентный код ES5 (или даже ES3), который понимают устаревшие браузеры. Так что двигайтесь дальше и пишите коды, ориентированные на будущее, прямо сейчас!

Цель этой серии

Может показаться, что писать эту серию статей уже поздно, так как уже есть много отличных ресурсов онлайн и оффлайн, которые охватывают все аспекты ES6. Тем не менее, мои основные цели при написании этой серии ES6:

  • внести свой вклад в принятие ES6
  • чтобы улучшить свои знания ES6 и навыки письма

Я надеюсь, что эта серия поможет людям легко изучить ES6. Я впервые пишу серию, если есть что-то, что я могу улучшить, или если в серии есть какая-то ошибка, пожалуйста, оставьте свой комментарий ниже!

Спасибо и следите за обновлениями для следующей статьи в серии на следующей неделе. Увидимся!

Ссылки