当前位置:首页 > 每日看点 > 正文内容

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

卡卷网12个月前 (03-14)每日看点311

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

分享给朋友:

相关文章

五个私藏宝贝网站!上班族摸鱼必备,打造快乐小天地

五个私藏宝贝网站!上班族摸鱼必备,打造快乐小天地

有朋友提到,虽然一整天都在“摸鱼”,但却感觉身心俱疲,甚至比一直忙碌工作还要累。其实这背后是有科学依据的。当人专注于工作时,会进入一种“心流”状态,这种状态让人感到兴奋、满足且充实。相反,如果在工作时分心“摸鱼”,会导致注意力分散,增加认知...

天涯神帖,第一神帖是什么?

天涯神帖,第一神帖是什么?

一些个人觉得比较经典的天涯神贴(更新进去了):话说1999年那会儿,中国的互联网还是个小婴儿,BAT三巨头都还在穿开裆裤呢,天涯社区就已经悄然诞生了。时光飞逝,到了2007年,这小小社区竟然已经吸引了超过2000万的注册用户,不得不说是个小...

PHP承载百万/天 访问量需要用到什么技术?

当年做一个百万PV的商城,也不过是两台2c4g的阿里云虚机罢了(其实一台就够,另外一台主要的逼着大家一定开发的时候一定要有负载均衡和横向扩容的意识)。当时框架还是Thinkphp3.2,框架提高运行效率的开关全打开,标准的lnmp模式,单机...

在追求家居美学的过程中,如何选择一款电视机,使其既具备出色的音画质又能与家居装饰相得益彰?

在追求家居美学的过程中,如何选择一款电视机,使其既具备出色的音画质又能与家居装饰相得益彰?

先看照片,你就说美不美吧?我家这个40平的客厅东西放得不少,其中最提升观感的是各种灯光,在这么多灯光中,是不是第一眼视觉中心就落在了电视上?没错,因为这电视是非常特别的环景光电视,与显示器的神光同步一样,会随着画面的变化而变化不同的光效,它...

被网络诈骗了,钱还能追得回来吗?

我刷单被骗,当时不知道怎么办在百度上找个律师说他们能追回,还说不用报警,我傻的就信了,支付了费用签合同,我还是不信他们,报警了,报警没几天警官就连系我追回一笔钱让我注意银行卡到账通知,又过几天我第二笔钱到账了,律师说是他们追回的,要我支付后...

微信占用存储空间很大,如何解决?

微信占用存储空间很大,如何解决?

微信用久了,越来越占内存怎么办?确实如此,微信使用时间久了,如果不定期清理数据的话,就会占用特别多的内存,几G甚至几十G。你是不是也正在为这种事情而头痛?碰到这种情况,除了卸载重装微信以外,我们可以通过下面几种方法来释放内存。方法一:删除应...

发表评论

访客

看不清,换一张

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