В Babel добавлена поддержка интеллектуальных конвейеров и частных мгновенных средств доступа. Компилятор JavaScript принимает код JavaScript ECMAScript 2015+ и преобразует его в обратно совместимую версию для работы в старых браузерах.
Babel также может конвертировать синтаксис React JSX в JavaScript. Основное обоснование использования Babel было сокращено, поскольку все меньше людей полагаются на старые браузеры, которые не поддерживают ES2015 и более поздние версии.
В самом последнем выпуске (7.3) добавлена поддержка интеллектуальных конвейеров. Поддержка синтаксического анализа была добавлена в Babel версии 7.2 для предложения Smart Pipelines Operator, и этот выпуск позволяет вам преобразовать его в стандартный ECMAScript и попробовать. Разработчики говорят, что текущая версия поддерживает только основное предложение и не поддерживает никаких дополнительных функций. В текущей реализации также отсутствует поддержка yield и await в конвейерах.
Следующее улучшение в этой версии — возможность анализировать и компилировать методы доступа к частным экземплярам. В Babel уже была поддержка частных полей и методов для экземпляров классов. Теперь добавлены частные методы и средства доступа (геттеры / сеттеры), что означает, что любой элемент класса может быть частным. Дополнение к Babel добавляет поддержку частных аксессоров в рамках текущей комбинации плагинов babel-plugin-class-features + babel-plugin-scheme-private-methods. Частные функции получения и установки извлекают и обновляют частное поле.
Последнее главное улучшение новой версии — поддержка именованных групп захвата. Разработчики называют это самой большой функцией ECMAScript 2018, отсутствующей в Babel — до сих пор. Именованные группы захвата позволяют назначить имя группе захвата. Это работает так: когда вы сопоставляете регулярное выражение со строкой, вы получаете объект сопоставления и можете присвоить ему имя. После сопоставления вы можете получить доступ к захваченной строке, используя присвоенное ей имя.
В текущем выпуске также улучшен синтаксический анализ TypeScript и исправлен ряд ошибок.