导读:微软推出RC版TypeScript 7.0,性能提升约10倍,且完全兼容6.0语义,支持现有项目无缝迁移。
各位,微软近日推出了 TypeScript 7 候选发行版。此次更新最核心的改动并非新增语法或配置项,而是把整套编译器底层全部改用 Go 语言重构。
在过去的一年,TypeScript 团队完成了原有代码库的迁移工作。项目没有选择从零重构,而是在现有 TS 实现基础上逐步移植,因此类型校验逻辑和 TypeScript 6 保持完全一致。开发者无需改动原有 TS 代码写法,就能直接享受大幅提升的运行性能。
提速并非优化小技巧,而是依托 Go 语言原生优势。Go 可编译为机器原生二进制程序,还支持共享内存并行运算。
据微软官方测试数据显示,同等项目下 TypeScript 7 的构建速度普遍比 V6 快十倍。该结论并非仅是微软自测,Figma、彭博、Vercel、Notion、Slack 等企业已经提前测试预发布版本超过一年,均测出相近的性能提升效果。
速度提升覆盖全场景,不局限于命令行 tsc 工具。编辑器实现代码提示、悬浮预览、实时报错的 LSP 语言服务,同样复用这套 Go 底层架构,大型项目里编辑器卡顿、加载慢的问题会明显缓解,也是开发者日常最直观能感受到的优化。
该项目开源托管在 GitHub平台,采用 Apache 2.0 开源协议,仓库标星超 25000,整体代码约 85% 由 Go 编写。对于微软主流前端工具而言,选用 Go 作为底层开发语言,是一次不小的改变。
TypeScript 7 完全沿用 V6 的默认配置,且 V6 中所有标注废弃的语法、配置,在 V7 里都会直接抛出阻断编译的硬性错误。由于 V6 推出时间不长,绝大多数项目都需要提前适配整改。
V6 的定位就是过渡版本,本身无重磅新功能,仅用来提前提示 V7 会彻底废弃的语法与配置。官方和实操建议统一:项目先升级至 TS6,清理全部废弃警告,后续升级 TS7 就不会出现编译故障。
一批旧配置在 TS7 会直接报错:target 不再支持 es5;module 淘汰 amd、umd、systemjs;默认参数变更为 strict: true、module: esnext。moduleResolution 有两处容易踩坑的改动:baseUrl 默认值改为 ./,通常需要手动指向 ./src;types 不再自动检索,必须手动写明依赖包。
当下多数第三方工具还没能立刻适配 TS7,比如 typescript-eslint 直接依赖 TS 包,稳定对外程序接口要等到 TS7.1 才会上线,距离现在还有数月。
微软提供了双版本共存方案,两个版本运行互不干扰,配套兼容包 @typescript/typescript6 提供 tsc6 命令并完整导出 TS6 API。只需在 package.json 配置 npm 别名即可同时安装两个版本:
{"devDependencies":{"typescript":"npm:@typescript/typescript6@^6.0.0","typescript-7":"npm:typescript@rc"}}
当配置完成后,代码校验工具使用稳定兼容的 TS6,项目编译等流程使用高性能 TS7,兼顾工具兼容性与编译速度。
微软团队称预计在 7.1 版本发布后,各类配套工具适配会基本完善。
TS7 支持解析、类型检查、产出物输出多步骤并行执行。文件解析和输出很容易拆分多线程处理,类型检查受文件依赖限制逻辑更复杂,团队采用固定数量工作线程分担任务,保证相同输入一定产出一致结果。
默认启用 4 个类型检查线程,可通过 --checkers 参数自定义线程数。多核设备调高线程数能进一步提速,但会增加内存占用;CI 资源有限的环境建议调低数值。
新增 --builders 参数,支持单体仓库多项目同步构建,可和 --checkers 叠加生效,例如同时配置 --checkers 4 --builders 4,最多可并行 16 组类型检查任务。添加 --singleThreaded 可强制单线程运行,适合调试或对比 TS6、TS7 的校验差异。
文件监听模式基于 Parcel 的监听逻辑迁移至 Go,不再轮询扫描庞大的 node_modules 目录,监听占用资源更低、响应更快。
以下,我们来分享一些常用的TS测试命令。
安装 RC 候选版
npm install -D typescript@rc查看版本号
npx tsc --version
常规编译(速度大幅提升)
npx tsc自定义类型检查线程数量
npx tsc --checkers 8强制单线程,用于版本对比调试
npx tsc --singleThreaded并行安装 TS6、TS7 双版本
npm install -D typescript:/typescript6npm install -D typescript-7:typescriptnpm install -D /native-previewnpx tsgo --version
夜间构建版本二进制命令为 tsgo,等 TS7 正式稳定版发布后,全部能力会统一归至 typescript 主包。
TypeScript 7 不会改动原有代码逻辑与类型校验规则,全部优化围绕构建、编辑器运行速度展开。
推荐给各位一个实操路线:先升级项目到 TS6 清理废弃警告,同时本地安装 RC 版本测试项目,遇到问题可在GitHub: microsoft/typescript-go 仓库提交反馈。候选版发布约一个月后,也就是 2026 年 7 月,TypeScript 7 正式稳定版将会上线。
作者:场长
本篇文章为 @ 场长 创作并授权 21CTO 发布,未经许可,请勿转载。
内容授权事宜请您联系 webmaster@21cto.com或关注 21CTO 微信公众号。
该文观点仅代表作者本人,21CTO 平台仅提供信息存储空间服务。
请扫描二维码,使用微信支付哦。