ES6 vs. ES2015

Прежде чем мы перейдем к элегантности и полезности ES6, давайте начнем с краткого обзора нескольких вещей, препятствующих его распространению в современном JavaScript. Главное, что сдерживает ES6, — это проблема совместимости. В то время как ES2015 работает почти для каждого пользователя Интернета, ES6 не поддерживается повсеместно. На первый взгляд (http://kangax.github.io/compat-table/es6) кажется, что большинство современных настольных браузеров довольно хорошо приспосабливаются к новому синтаксису. Более внимательное изучение вышеупомянутого графика обнаружит некоторые подводные камни.

Разработчики Javascript в 2018 году склонны ошибочно полагать, что все регулярно обновляют свой браузер. Также большинство из нас используют Chrome из-за его популярного и полезного DevTools. Поэтому, хотя я могу эффективно создавать и тестировать код ES6 в своем браузере, многим из моей потенциальной аудитории может не повезти. Поскольку мы часто (если не всегда) ищем большую аудиторию для наших приложений и веб-сервисов, мы должны служить интернет-сообществу в его нынешнем состоянии.

Вопрос. Так как же нам получить удовольствие от написания кода в ES6, но при этом обслуживать общественность?

A: Транспиляция

Введите Вавилон.

Babel.io — это веб-сервис и пакет npm для распаковки ES6 в ES2015. У них есть очень полезный визуализатор, доступный на веб-сайте, чтобы продемонстрировать, как выглядит код ES6. Babel можно настроить для просмотра и трансляции вашего кода в режиме реального времени (при каждом сохранении), чтобы максимально повысить доступность вашего развернутого продукта.

Поскольку ES6 обратно совместим, вы все еще можете использовать «var» и «function» в своем коде во время компиляции. Следите за мной, чтобы не пропустить соответствующие блоги, в том числе предстоящие на следующей неделе «10 хитростей, чтобы начать использовать ES6».