类型擦除

ts 转 js 主要工作就是 「类型擦除」

Untitled

如何擦除类型

npm i -g esbuild
sebuild 1.ts > 1.js

npm i -g @swc/cli @swc/core
swc 1.ts -o 1.js

# 以上两种转义很快(因为不检查 TS 语法是否正确)

npm i -g typescript
tsc 1.ts

npm i @babel/core @babel/cli @babel/preset-typescript
babel --presets @babel/preset-typescript 1.ts

# 以上两种转义慢

TS、ES6、ES5 之间的关系

Untitled

ES6 兼容表

查询ES6兼容表

在线编辑器推荐

Javascript Playground (Sandbox, Repl)

StackBlitz | Instant Dev Environments | Click. Code. Done. - StackBlitz

CodeSandbox: Online Code Editor and IDE for Rapid Web Development

使用 Vite 本地编辑 TS

npm create vite@latest ts-demo -- --template vanilla-ts
npm i
npm run dev

如何使用 Node 运行 TS

ts-node

会先进行类型检查,再类型擦除运行

https://typestrong.org/ts-node/docs/installation

npm install -g ts-node # 全局安装
ts-node 1.ts # 运行 1.ts 文件