在线代码运行BanShow Run

🔷 在线运行 TypeScript

不用 npm install,不用配 tsconfig.json。写完 TypeScript 点运行,编译错误和执行结果都显示在右边。

运行环境Sucrase 编译 → 浏览器执行 需要下载约 200 KB 🔒代码只在本机浏览器运行,不上传服务器

Ctrl / ⌘ + Enter 运行

输出

还没有输出。写好代码点「运行」,结果会显示在这里。

就绪

TypeScript 先在浏览器里编译成 JavaScript(约 200 KB 的编译器),再立即执行,无需下载庞大的 tsc。

三步开始

  1. 在代码框里写 TypeScript,类型注解、interface、enum、泛型都可以用。
  2. 点「运行」(或按 Ctrl / ⌘ + Enter):先编译,编译通过就立即执行。
  3. 如果语法写错了,输出区会给出具体的行号和列号,直接跳到那一行改。

示例代码

点任意一条即可载入到编辑器,改两行再运行,是熟悉语法最快的方式。

TypeScript 教程

常见问题

会做类型检查吗?

不会。本站只做「编译 + 运行」,也就是把类型注解擦掉转成 JavaScript。类型错误(比如把 string 赋给 number)不会被报告。这是刻意的取舍:完整的 tsc 有 9 MB,会拖慢加载;而初学者最需要的是先看到代码能跑起来。

那和直接写 JavaScript 有什么区别?

区别在语法:你可以用 interface、type、enum、泛型、访问修饰符、可选属性、as 断言这些 TS 独有语法,本站会正确编译它们。运行时行为与 JavaScript 一致。

支持哪些 TypeScript 语法?

interface / type / class(含 private、public、readonly、抽象类)/ enum(含字符串枚举)/ 泛型 / 可选与只读属性 / 非空断言 ! / 类型断言 as / 元组 / 联合与交叉类型 / 参数属性。不支持装饰器(写在方法上的会被悄悄删掉,写在类上的直接语法报错)、namespace(整块会被删掉)和 .d.ts 声明文件。

编译报错信息怎么看?

形如 Unexpected token, expected "," (3:15) 表示第 3 行第 15 列出错。本站会把它翻译成中文提示并标出具体位置。

能 import 第三方 npm 包吗?

不能。沙箱里没有模块解析,只能用自己写的代码和 JavaScript 内置对象。

枚举 enum 编译成什么了?

编译成一个立即执行函数,把名字和数字双向映射挂到对象上,和 tsc 的行为一致。

换一门语言