加载中...

SWC(Speedy Web Compiler)是用 Rust 编写的 JavaScript/TypeScript 编译平台,由韩国开发者 Donny(kdy1)发起,提供语法转换、压缩、模块打包等能力,定位是 Babel 的高性能替代品。
SWC 将源码解析为 AST 后执行降级转换(如将新语法编译到目标 ES 版本)、TypeScript 类型擦除与 JSX 转换;由于以原生代码运行并支持并行处理,单线程速度即数倍于 Babel,多核下差距更大。
Next.js 自 12 版起用 SWC 取代 Babel 与 Terser 作为默认编译与压缩器,作者也受雇于 Vercel;Jest(通过 @swc/jest)、Rspack、Parcel 等工具同样采用其编译能力。类似定位的还有 esbuild(Go 编写)与后起的 Oxc。
优点是速度极快、可作为 Babel 的直接替换;缺点是自定义插件需用 Rust 编写(Wasm 插件),生态灵活性不及 Babel 的 JavaScript 插件体系。

登录 后参与讨论
暂无讨论,来发表第一条评论吧