Удалитель типов TypeScript

ДанныеРазработчикТекст
Реклама · УДАЛИТЬ?

Или
Реклама · УДАЛИТЬ?

Гид

TypeScript Type Stripper

Удалитель типов TypeScript

Инструмент TypeScript Type Stripper превращает исходный код TypeScript в чистый, исполняемый JavaScript, удаляя все конструкции, добавленные языком на уровне компиляции. Удаляются аннотации типов, объявления интерфейсов, типы-алиасы, параметры шаблонов, перечисления, декораторы и не-нулевые утверждения в одном определённом проходе, при этом сохраняется рантайм-логика программы точно так, как она была написана.

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

Как использовать

  1. Вставьте свой исходный код TypeScript в область ввода или перетащите файл .ts или .tsx на загрузчик.
  2. Выберите режим вывода: Только удаление типов сохраняет современный синтаксис, при этом режимы ES2020, ES2017 и ES5 дополнительно снижают новые языковые функции.
  3. Выберите опцию обработки JSX, если в вашем коде присутствуют выражения JSX, затем включите сохранение JSDoc, удаление типовых импортов и удаление комментариев по желанию.
  4. Плоский JavaScript появляется в панели вывода сразу после завершения компилятора. Используйте кнопки копирования или скачивания, чтобы получить результат.

Возможности

  • Определённое преобразование AST – Основано на официальном компиляторе TypeScript, поэтому выходной код идентичен по байтам.
  • Только удаление типов или снижение уровня – Выбор между чистым удалением типов или полным переводом в ES2020, ES2017 или ES5.
  • Полная поддержка языка – Обрабатывает интерфейсы, типы-алиасы, шаблоны, перечисления, декораторы, параметры свойств и не-нулевые утверждения корректно.
  • JSX-осознанный – Сохранять .jsx вывод или преобразовывать в React.createElement вызовы.
  • Управление комментариями – Сохранять блоки JSDoc, удалять их или удалять все комментарии для производственных сборок.
  • Очистка импортов только по типам – Удаляются import type выражения, которые больше не ссылаются на что-либо на уровне выполнения.
  • Приватность на первом месте – Всё происходит в браузере; никакой код не загружается на сервер.
  • Отчёт о размере – Узнайте, на сколько байт уменьшается размер вырезанного вывода по сравнению с исходным кодом.

Реклама · УДАЛИТЬ?

Часто задаваемые вопросы

  1. Что такое TypeScript и как он отличается от JavaScript?

    TypeScript — это строгий супермножество JavaScript, которое добавляет статические аннотации типов, интерфейсы, перечисления, шаблоны и другие конструкции на уровне компиляции. Компилятор TypeScript (tsc) парсит эти конструкции в абстрактное синтаксическое дерево (AST) и затем генерирует стандартный JavaScript, удаляя слой типов. Поскольку типы существуют только на уровне компиляции, поведение на уровне выполнения хорошо типизированного TypeScript идентично JavaScript, в который он компилируется.

  2. Почему устранение типов — это определённое преобразование?

    Устранение типов является определённым преобразованием, потому что оно работает на разобранных узлах AST, а не на исходном тексте. Каждый узел дерева имеет явный тип, и компилятор удаляет узлы с типовыми характеристиками (например, TypeAnnotation, InterfaceDeclaration и TypeAliasDeclaration), не затрагивая соседние выражения, производящие значения. В результате JavaScript гарантирует сохранение семантики при условии, что исходный код синтаксически корректен.

  3. Что такое цели снижения уровня ECMAScript и почему они важны?

    Редакции ECMAScript (ES2017, ES2020, ES2022 и т.д.) определяют, какие языковые функции встроены в браузеры и среды выполнения. Цель снижения уровня указывает на то, что компилятор должен переписывать новые функции (например, опциональное цепление, async/await, поля классов) в эквивалентный код, который может быть выполнен на более старых целях. Выбор более низкой цели расширяет совместимость за счёт увеличения размера выходного кода и включённых вспомогательных функций.

  4. Как различаются файлы объявлений и исполняемый код?

    Файл объявления (.d.ts) содержит только амбивентную типовую информацию: интерфейсы, типы-алиасы, сигнатуры функций и формы модулей. При компиляции он не генерирует исполняемый код. Файлы реализации (.ts) объединяют типы и исполняемые выражения. В процессе компиляции весь контент .d.ts исчезает, и в JavaScript издаются только исполняемые части файлов .ts.

Хотите убрать рекламу? Откажитесь от рекламы сегодня

Установите наши расширения

Добавьте инструменты ввода-вывода в свой любимый браузер для мгновенного доступа и более быстрого поиска

в Расширение Chrome в Расширение края в Расширение Firefox в Расширение Opera

Табло результатов прибыло!

Табло результатов — это интересный способ следить за вашими играми, все данные хранятся в вашем браузере. Скоро появятся новые функции!

Реклама · УДАЛИТЬ?
Реклама · УДАЛИТЬ?
Реклама · УДАЛИТЬ?

новости с техническими моментами

Примите участие

Помогите нам продолжать предоставлять ценные бесплатные инструменты

Купи мне кофе
Реклама · УДАЛИТЬ?