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, включающую это экспериментальное нововведение, можно загрузить уже сейчас.

Читайте также
Dev новости: Deno Decorates, предварительный рендеринг в Nuxt, Astro
Dev новости: Deno Decorates, предварительный рендеринг в Nuxt, Astro
Dev новости: Deno Decorates, предварительный рендеринг в Nuxt, Astro

Прогресс у Deno с JS && TS. релизы Astro и другие новости

Opera представила новые команды управления вкладками на базе ИИ для удобства пользователей
Opera представила новые команды управления вкладками на базе ИИ для удобства пользователей
Opera представила новые команды управления вкладками на базе ИИ для удобства пользователей

Браузер Opera продолжает радовать своих пользователей инновациями, на этот раз представив функцию Tab Commands — инструмент для управления вкладками с помощью команд, основанных на искусственном интеллекте. Это нововведение, использующее возможности встроенного ИИ Aria, позволяет легко и быстро организовать вкладки, используя текстовые команды, такие как «Закрыть все вкладки с YouTube» или «Сгруппировать все вкладки с покупками».

Новости для разработчиков: обновления от Deno, Android и Angular
Новости для разработчиков: обновления от Deno, Android и Angular
Новости для разработчиков: обновления от Deno, Android и Angular

На этой неделе в мире разработки фронтенда было много интересных новостей. Среди них релизы Angular v19, Deno v2.1 и предварительный анонс Android v16. Каждое из этих обновлений обещает улучшения в производительности и удобстве работы, а также новые возможности для разработчиков.

Google переименовал чат бота Bard в Gemini
Google переименовал чат бота Bard в Gemini
Google переименовал чат бота Bard в Gemini

Новый формат взаимодействия с AI чатами от Google