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

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

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

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

分享给朋友:

相关文章

那些极速版软件其存在目的是什么?

那些极速版软件其存在目的是什么?

我看了很多回答,其实都没有回答道点子上。 你知道极速版APP为什么叫极速版吗? 是他看视频更快吗?显然不是。 只是它的安装包体积更小,下载安装速度更快而已,所以叫极速版app。当然啦,现在极速版APP和原声版APP,安装包已经没有区别了,这…

如何在自己家里建立一套私有云系统?需要哪些设备?

如何在自己家里建立一套私有云系统?需要哪些设备?

我敢保证,这绝对是目前为止最简单的搭建家用私有云的方法: “一台主机+至少一块硬盘”足矣!不需要任何专业知识,也没有复杂繁琐的步骤,十分钟不到就能搭建好,帮你成功打开文件云储存新世界的大门!还在单纯依靠网盘进行文件存储的朋友,不是我吐槽哈,…

为什么雷军身上没有酒色财气?

武大建校130周年时,雷军向母校个人捐款13亿。 在2023年8月14日晚上七点,雷总在国家会议中心举行的进行第四次年度演讲「成长」: 全篇都在谈成长、梦想,这么多年了,始终做到了知行合一,我相信酒色财气可能真不是他所追求的,一直追求的就像…

怎样使自己处于高能量状态?

1、 不要习惯性的回顾过去那些让你尴尬和犯了错误的事情,不要嫌弃自己蠢。 学会原谅自己,当你不断回忆那些错误和囧事的时候,告诉自己:自己确实做错了,下次不要再犯即可,不需一遍遍的回忆。 这件事情已经发生,不要再一遍遍的折磨自己,不断回忆一点…

本专业是电气的,请问入门plc 必须要从电工接线开始吗,我怕被公司骗了,想请教各位?

本专业是电气的,请问入门plc 必须要从电工接线开始吗,我怕被公司骗了,想请教各位?

开关接线图 PART 01一开单控开关接线图 二三开连体单控开关接线图 四开连体单控开关接线图 一开五孔单控插座接线图 二开五孔单控插座接线图 一开双控开关接线图 二三开单控开关接线图 四开单控开关接线图 一…

为什么现在 AI 已经没啥热度了?

从改名叫大模型那一刻,懂行的就已经放弃了,剩下资本和无知网友还有点后劲 所谓大模型,本质就是一个更大、更快数据库的传声筒。更大更快本身确实很厉害,但依然只是传声筒,和AI根本不沾边 数据库之外仍然一无所知,甚至数据库之内的输出逻辑还要依赖大…

发表评论

访客

看不清,换一张

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