当前位置:首页 > 每日看点

如何看待 2025 年 3 月 11 日微软公开的 TypeScript-Go 项目?

卡卷网1年前 (2025-03-14)每日看点467

等了好多年的项目。。。之前项目里代码很多,VSCode 经常因为 TypeScript 卡死。

这是什么?用 Go 语言重写的 TypeScript 编译器,将成为后续的 TypeScript 7 版本。

怎么实现的?基本就是将 TypeScript 项目里的代码从 TypeScript 逐行转成 Go 语言,函数名都一样,下面是一个简单函数的对比:

/ /typescript 版本 function getElementTypeOfArrayType(type: Type): Type | undefined { return isArrayType(type) ? getTypeArguments(type)[0] : undefined; } // go 版本 func (c *Checker) getElementTypeOfArrayType(t *Type) *Type { if c.isArrayType(t) { return c.getTypeArguments(t)[0] } return nil }

为什么是用 Go 语言?如果既要性能又要方便迁移代码,这是当前最好的选择,因为有 GC 使得代码里很容易实现循环引用,相比之下 Rust 写起来就太麻烦了,必须依赖内存池等方案。

用什么用处?可以提升现有 IDE 里的语法检查及编译 TypeScript 的速度,号称提升 10 倍,利好大型 TypeScript 项目开发。

和现有工具比?现有的类似工具主要做编译,比如 SWC 等都不做类型检查,而 Typescript-Go 除了编译还会做类型检查,提供 LSP 服务等。

未来前景?主要用使用场景将局限在 IDE 中提供类型检查和 LSP 服务,预计编译速度不会超过 SWC,而且现在 Bun、Deno 及新版 Node 都直接支持运行 TypeScript 了,用起来方便得多。

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2025/03/11871.html

分享给朋友:

相关文章

为什么大家不再提 5G 了?

现在看来,只有美国那种5g的思路是对的。 美国的运营商一开始就发现5g和4g并没有质的飞跃,无非就是提升频率/降低穿透力/提升带宽的故事。而美国运营商又是自负盈亏,因此一开始就仅在人口高密度地区或富裕地区布置5g。 虽然说人家4g也菜,但是…

计算机专业不干互联网不热爱技术,还能转行干什么?

转行的思路,无非也就是那几个。 我们顺着每个思路,一路捋一遍,基本上,大致可行的方向,也就有了。 一、跟对口职业和岗位业务链条相邻的职业和岗位计算机专业如果找到了对口的技术岗位,跟技术工作联系最紧密的岗位是什么? 产品经理。当然,大多数产品…

用wordpress做这个网站的话,需要用到哪些插件?

一个完整成型的B2C电商独立站,如果用wordpress+woocommerce搭建,最终会用上20来个插件,而且是在经过慎重筛选,剔除不必要的插件的情况下,别问我为什么。 wordpress建站,插件安装多了,速度会变慢,这是常识,但需要…

为什么不建议买游戏本?

我建议厂家改名 厂家犯了个巨大错误:游戏本的主要受众是在校大学生,但大学生买电脑的买单人是他们的父母。你让父母给孩子买个游戏本,父母怎么想? 如果你改成高效学习本、优质学习本、智能学习本、高速学习本,甚至硕博连读本,你看看家长舍不舍得砸这个…

为什么 lnx 求导是 1/x?

为什么 lnx 求导是 1/x?

其实,我想对题主说,你提的问题一点都不弱智。恰恰相反,这是个非常有意义的问题。我们学习一门知识,尤其是数学知识,要知其然,更要知其所以然。今天,我尝试从 “如何去定义“的角度出发来解释这个问题,不玩公式推导的符号游戏。希望能带来新的启发。为…

为什么网易云音乐越做越烂了?

还记得当年周杰伦专辑授权到期的最后一天,他来个一次性打包买断给歌迷,结果歌迷花钱买完了,第二天授权到期,不能听了。 这种下三滥的操作,我不知道是哪个群体这么多年一直在吹网易云音乐。 一堆没有授权的英文歌,一堆民间翻唱的歌,他是怎么有脸搞付费…

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。