Babel (транспилятор)

Babel — свободный транспилятор JavaScript с открытым исходным кодом, который в основном используется для преобразования кода ECMAScript 2015+ (ES6+) в обратно совместимый код JavaScript, который может выполняться более старыми движками JavaScript. Он позволяет веб-разработчикам использовать новейшие возможности языка[1].

Разработчики могут использовать новые возможности языка JavaScript, преобразуя свой исходный код с помощью Babel в версии JavaScript, которые могут обрабатывать веб-браузеры[2]. Babel также можно использовать для компиляции TypeScript в JavaScript[3]. Основная версия Babel загружалась 5 миллионов раз в месяц в 2016 году, а к 2019 году это число увеличилось до 16 миллионов раз в неделю[4][5].

Плагины Babel преобразуют синтаксис, который не имеет широкой поддержки, в обратно совместимую версию. Например, стрелочные функции, определённые в ES6, преобразуются в обычные объявления функций[6]. Нестандартный синтаксис JavaScript, такой как JSX, также может быть преобразован[7][8].

Babel может автоматически внедрять полифиллы, предоставляемые библиотекой core-js[9], для поддержки возможностей, которые полностью отсутствуют в некоторых средах выполнения JavaScript. Например, статические методы, такие как `Array.from`, и встроенные объекты, такие как `Promise`, доступны только в ES6 и более новых версиях, но их можно использовать в старых средах при наличии core-js.

См. также

Примечания

  1. Technology Radar, Emerging Technology Trends for 2017, ThoughtWorks (англ.). www.thoughtworks.com. Дата обращения: 12 мая 2018.
  2. Why Babel Matters, codemix (англ.). codemix.com. Дата обращения: 12 мая 2018.
  3. Using Babel with TypeScript, TypeScript official website
  4. The State of Babel · Babel (англ.). babeljs.io. Дата обращения: 12 мая 2018.
  5. Babel's Funding Plans · Babel (англ.). babeljs.io. Дата обращения: 1 августа 2020.
  6. Plugins · Babel (англ.). babeljs.io. Дата обращения: 5 июля 2019.
  7. Introducing JSX - React (англ.). reactjs.org. Дата обращения: 12 мая 2018.
  8. Using React and building a web site on Azure. Microsoft Faculty Connection (англ.). Дата обращения: 12 мая 2018.
  9. core-js (англ.). GitHub.

Ссылки