摘要:
本文由牛旦课堂发布,墨子老师 编辑。
参考链接:https://www.infoworld.com/article/3586354/nodejs-15-debuts-support-for-http3-transport.html
新版Nodejs 15升级为事件驱动的JavaScript运行时,同时也更新了NPM,增强了未处理拒绝的特性,并添加了使用数组缓冲区的新方法。
![0144548d899bb99f4f98fb31813e4b28.png](https://i-blog.csdnimg.cn/blog_migrate/534414ec80ed0b7a2b50716c6bfe1fc4.jpeg)
事件驱动型JavaScript运行时(详情可查阅:https://www.infoworld.com/article/3210589/what-is-nodejs-javascript-runtime-explained.html)的最新版本Node.js 15.0.0在10月20日发布,它现在已经开启了与Deno运行时(详情可查:https://www.infoworld.com/article/3543791/deno-10-arrives-to-challenge-nodejs.html)的竞争,其中包括实验性传输协议HTTP/3和最新版本的NPM包管理器。
可以从Nodejs.org下载(https://nodejs.org/en/download/current/),Node.js 15.0.0取代Node.js 14作为“当前”发布行,Node.js将在本月晚些时候升级为LTS(长期支持)状态。Node.js 15作为一个奇数版本,将不会提升到LTS状态。
Node.js最近遭到了来自一个不太可能的来源的批评——Node.js的创建者Ryan Dahl,他创建了Deno来解决Node.js的一些缺点,比如安全性。但是Node.js背后的开发者仍然致力于他们的平台。
“Node.js项目和技术指导委员会对Deno没有正式的立场,”Node.js 15的发布经理Bethany Griggs说。“我个人的观点是,拥有其他运行时实现,如Deno,有助于推动创新向前发展,”她补充道。“我相信它们有共存的空间。”
Node.js 15.0.0涵盖了很多领域,相关特性包括:
- QUIC,一种UDP传输协议,是HTTP/3的底层传输协议。对QUIC的支持现在还处于实验阶段。QUIC具有TLS 1.3内置的安全性、流控制、错误纠正、连接迁移和多路复用等特征。
- 针对unhandledRejection的默认模式已更改为从警告而抛出。在抛出模式中,如果未设置unhandledRejection钩子,则unhandledRejection会作为未捕获异常引发。 Node.js参与者IBM说,对未处理拒绝的增强为这些拒绝提供了一个更精简的视图,使查找和调试任何问题变得更容易。
- NPM 7.0.0, JavaScript包管理器的最新版本。
- N-API 7,它带来了用于处理数组缓存的额外方法。这已经被反向移植到Node.js 14.x中。
- AbortController的一个实验性实现,它是一个全局实用程序类,用于在选定的基于Promises的API中发出取消信号,发生信号的API是基于AbortController web API(https://developer.mozilla.org/en-US/docs/Web/API/AbortController)的。
Node.js 团队还指出,Node.js 10将于4月21日达到使用寿命结束状态,并建议用户计划升级。他们已发布了一份有价值的技术文件(具体看这里:https://github.com/nodejs/node/blob/master/doc/guides/technical-values.md)来指导平台的进一步发展。