不喜欢广告? 无广告 今天

TypeScript 类移除器

数据开发人员文本
广告 移除?

或者
广告 移除?

指导

TypeScript 类型移除器

TypeScript 类移除器

TypeScript 类型移除器将 TypeScript 源代码转换为干净、可运行的 JavaScript,通过移除语言在 ECMAScript 上添加的每一个编译时构造。类型注解、接口声明、类型别名、泛型参数、枚举、装饰器和非空断言在一次确定性的处理中被移除,同时程序的运行时逻辑被完全保留,与原始代码一致。

该工具完全在您的浏览器中运行,使用官方 TypeScript 编译器 API,因此您的源代码永远不会离开您的机器。输出结果与 tsc 对相同输入产生的结果完全一致,这使得该移除器在移植库、在纯 JavaScript 环境中共享代码片段、调试转译后的行为以及在项目不再需要时迁移到 JavaScript 时非常安全。

如何使用

  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 内容都会消失,仅将 .ts 文件中的可执行部分转译为 JavaScript 输出。

想要享受无广告的体验吗? 立即无广告

安装我们的扩展

将 IO 工具添加到您最喜欢的浏览器,以便即时访问和更快地搜索

添加 Chrome 扩展程序 添加 边缘延伸 添加 Firefox 扩展 添加 Opera 扩展

记分板已到达!

记分板 是一种有趣的跟踪您游戏的方式,所有数据都存储在您的浏览器中。更多功能即将推出!

广告 移除?
广告 移除?
广告 移除?

新闻角 包含技术亮点

参与其中

帮助我们继续提供有价值的免费工具

给我买杯咖啡
广告 移除?