在Deno 1.24中有更好的类型检查和更多的内容

138 阅读2分钟

最新发布的Node.js对手具有改进的转码器性能,更智能的类型检查,以及调试和回退错误处理支持。

支持者说,作为Node.js竞争对手JavaScript和TypeScript运行时Deno最近进行了升级,提高了转码、类型检查等方面的性能。

在Deno 1.24发布之前,当指定--check 标志时,Deno内部使用TypeScript编译器将TypeScript代码转换为JavaScript;否则,它使用swc,一个基于Rust的网络平台。现在,所有的发射都是通过swc 来完成的,这就大大加快了速度。由于架构上的重构,发射不再通过deno check ,而且用于存储发射的JavaScript的缓存也得到了改善。另外,如果Deno之前已经对一些代码进行了类型检查,它就不会再进行类型检查。

这一系列的新功能和升级应该会带来相当大的性能改善,但结果会因代码库的不同而不同。

Deno 1.24的更多新功能和支持

在7月21日的版本更新中,额外的功能和支持包括以下内容:

  • 增加了对unhandledrejection事件的支持,这对调试和意外情况下的回退错误处理很有用。
  • 现在还支持beforunload事件,让网页触发一个确认对话框,询问用户是否要离开一个页面。如果确认,浏览器就会导航到新的页面。
  • 一个import.meta.resolve() API允许解决相对于当前模块的指定器。
  • 不稳定的外国函数接口的性能得到了改善。
  • 编辑器中的自动导入支持已经针对语言服务器协议进行了改进。
  • 不稳定的子进程 API 得到了改进。一项升级涉及到对stdio流类型的改变;取代了描述哪些流可用的复杂的通用类型,现在这些是简单的、始终可用的流。
  • dotenv 标准模块中已经启用了变量扩展。

已经在使用Deno的开发者可以通过运行:deno upgrade 升级到最新版本。Deno网站包括了安装Deno运行时的其他说明和方法。