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

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

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

等了好多年的项目。。。之前项目里代码很多,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

分享给朋友:

相关文章

为什么这次 Mac mini 的 M4 版本价格这么低?

为什么这次 Mac mini 的 M4 版本价格这么低?

扫了一眼这里的回答,目测没几个人真买过 Macbook、Mac mini且真正当主力工作机用过。 这个初始(丐版)版本的机器实际谈不上多便宜,备受热捧有几个原因。 它这代产品整体做了重新设计,大幅缩减了尺寸,真正称得上 Mini 了。…

怎样拥有一台最便宜的服务器?

怎样拥有一台最便宜的服务器?

内容提示:主打一个 DIY + 极限白嫖 =) 某宝花10块买一个“随身WiFi”,刷入Ubuntu,用SSH远程连接,但是记得一定要把外壳撬掉然后粘个散热器(哪怕是白萝卜也彳亍),否则会过热 详细去酷安社区搜“随身WiFi” ======…

抖音有3,4万粉丝能挣多少钱?

抖音有3,4万粉丝能挣多少钱?

如果在抖音有100万粉丝,一个月能赚多少钱你知道吗?直接说答案: 抖音有100万粉丝,可能1分钱也赚不到...那视频有100万点赞,能赚多少钱?可能也是1分钱都赚不到... 新手需要通过抖音变现 [文章: 做为新手玩抖音要注意什么?怎样才能…

是什么原因让你一定要用 iPhone?

是什么原因让你一定要用 iPhone?

1、不用清理内存,iPhone真的可以开机用上一年,你根本不用关注期间打开过什么软件。 2、支持的频段足够多,天天在国内走动倒是无所谓,很多Android手机一旦出去了,就会发现很多运营商接入都是问题,更不用说各种本土化的服务了。 3、…

为什么 lnx 求导是 1/x?

为什么 lnx 求导是 1/x?

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

数据分析人员需要掌握sql到什么程度?

数据分析人员需要掌握sql到什么程度?

能熟练用SQL进行统计分析,包括基本查询语句,聚合函数,连接,子查询,窗口函数等。作为现互联网的数据打工人,接下来我从 SQL必知必会和SQL学习方法两个方面来详细介绍~ 注意:对于传统企业和一些小公司,数据量级并不太大,这时只要掌握E…

发表评论

访客

看不清,换一张

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