Node.js вводит экспериментальную поддержку TypeScript

Недавно в Node.js была добавлена экспериментальная возможность выполнения файлов на TypeScript. Эта новая опция активируется с помощью флага —experimental-strip-types, что означает, что Node.js будет транслировать исходный код TypeScript в JavaScript перед выполнением.

Node.js — это кроссплатформенная, асинхронная среда выполнения JavaScript с открытым исходным кодом, построенная на движке V8 от Google Chrome. Она использует событийный, неблокирующий режим ввода-вывода и позволяет выполнять JavaScript вне веб-браузера.

Причины Нововведения

Марко Ипполито, разработчик TypeScript, объяснил, почему это дополнение было добавлено:

«Возможность исполнять файлы TypeScript напрямую крайне важна для развития всей экосистемы. Пользователи просили об этом во всех опросах, и мы не можем игнорировать их запросы. Мы должны предоставить возможность запускать node foo.ts без необходимости установки дополнительных зависимостей или загрузчиков,» — сказал Марко.

По его словам, это нововведение было востребовано сообществом и может значительно упростить работу с TypeScript в Node.js, позволяя обойтись без сторонних инструментов для выполнения TypeScript-кода.

Технические Подробности

Процесс снятия типов, как следует из названия, заключается в удалении всех типов для преобразования кода TypeScript в чистый JavaScript. Важно отметить, что при этом транспилятор не выполняет проверку типов, он просто удаляет их. Это похоже на работу других сред выполнения, которые также трансформируют некоторые возможности TypeScript в JavaScript, такие как перечисления, отсутствующие в JavaScript.

Будущее TypeScript в Node.js

Существует также предложение TC39 по внедрению аннотаций типов в стандарт JavaScript, что может в будущем упростить интеграцию TypeScript с Node.js и другими инструментами.

Версию Node.js 22, включающую это экспериментальное нововведение, можно загрузить уже сейчас.

Читайте также
Игра «Нейрогород» на знание JavaScript и исправление фронтендерских багов
Игра «Нейрогород» на знание JavaScript и исправление фронтендерских багов
Игра «Нейрогород» на знание JavaScript и исправление фронтендерских багов

Задача игры — устранить все баги, особенно присматриваться к любым странным и необычным явлениям во внешнем облике города.

Dev новости: Astro 4, Deno и cron, Webstorm релиз, Storybook релиз, Node.js 20 бета, Django
Dev новости: Astro 4, Deno и cron, Webstorm релиз, Storybook релиз, Node.js 20 бета, Django
Dev новости: Astro 4, Deno и cron, Webstorm релиз, Storybook релиз, Node.js 20 бета, Django

В Deno добавили очередь cron, Релиз 2023.3 Webstorm с AI ассистентом, Storybook последняя версия 7.6 перед 8, и бета Node.js 20

Kuto — reverse сборщик javascript
Kuto — reverse сборщик javascript
Kuto — reverse сборщик javascript

Анонсировали сборщик, который уменьшит ваш бандл. Kuto — это новый подход к доставке кода пользователю. Он позволяет повторно использовать уже имеющийся у клиента код для доставки обновлений.

Опубликовали предварительную версию Catalyst v0.1.0
Опубликовали предварительную версию Catalyst v0.1.0
Опубликовали предварительную версию Catalyst v0.1.0

По словам разработчиков, Catalyst — это первый полностью компонентизованный UI-kit, который выполнен по концепции Batteries Included («Всё включено»). В нем используются настоящие компоненты React с продуманными API.