Node.js v17.0.0 正式发布

栏目: 软件资讯 · 发布时间: 2年前

内容简介:Node.js 是能够在服务器端运行 JavaScript 的开放源代码、跨平台 JavaScript 运行环境。Node.js 由Node.js Foundation(已与 JS Foundation 合并为 OpenJS Foundation)持有和维护,亦为 Linux 基金会的项目。Nod...

Node.js 是能够在服务器端运行 JavaScript 的开放源代码、跨平台 JavaScript 运行环境。Node.js 由Node.js Foundation(已与 JS Foundation 合并为 OpenJS Foundation)持有和维护,亦为 Linux 基金会的项目。Node.js 采用 Google 开发的 V8 运行代码,使用事件驱动、非阻塞和异步输入输出模型等技术来提高性能,可优化应用程序的传输量和规模。这些技术通常用于资料密集的即时应用程序。

Node.js 17.0.0 正式发布,本次更新值得注意的变化包括:

弃用与移除

  • [4b030d0573] - doc: 在 http 中弃用 .aborted 属性和 abort aborted 事件 (doc-only) #36670
  • [36e2ffe6dc] - (SEMVER-MAJOR) module: 移除子路径文件夹映射 #40121
  • [64287e4d45] - (SEMVER-MAJOR) module: 运行时弃用斜杠结尾(trailing slash)模式 #40117

OpenSSL 3.0

Node.js 现在包含 OpenSSL 3.0,特别是提供 QUIC 支持的 quictls/openssl。在 OpenSSL 3.0 中,使用新的 FIPS 模块再次提供 FIPS 支持。

虽然 OpenSSL 3.0 API 与 OpenSSL 1.1.1 提供的 API 基本兼容,但由于对允许的算法和密钥大小的严格限制,预计会对 Node.js 的生态产生一些影响。

如果你在使用 Node.js 17 的应用程序中遇到ERR_OSSL_EVP_UNSUPPORTED错误,很可能是你的应用程序或正在使用的模块尝试使用 OpenSSL 3.0 默认不再允许的算法或密钥大小。开发者可以添加--openssl-legacy-provider命令行选项 ,作为这些收紧限制的临时解决方法以恢复应用程序。

有关 OpenSSL 3.0 中所有功能的详细信息,请参阅该链接

V8 9.5

V8 JavaScript 引擎已经更新到 V8 9.5。该版本为 Intl.DisplayNames API 提供了额外的支持类型,并在 Intl.DateTimeFormat API 中扩展了 timeZoneName 选项。

Readline Promise API

readline 模块提供了一个接口,用于从 Readable 流(如 process.stdin)中一次一行地读取数据。

下面的简单例子说明了 readline 模块的基本用途。

import * as readline from 'node:readline/promises';
import { stdin as input, stdout as output } from 'process';

const rl = readline.createInterface({ input, output });

const answer = await rl.question('What do you think of Node.js? ');

console.log(`Thank you for your valuable feedback: ${answer}`);

rl.close();

其他值得注意的变化

  • [1b2749ecbe] - (SEMVER-MAJOR) dns: 在 dns.lookup() 中默认设置 verbatim=true #39987
  • [59d3d542d6] - (SEMVER-MAJOR) errors: 在导致退出的关键异常上打印 Node.js 版本 #38332
  • [a35b7e0427] - deps: 将 npm 升级到 8.1.0 #40463
  • [6cd12be347] - (SEMVER-MINOR) fs: 添加 FileHandle.prototype.readableWebStream() #39331
  • [d0a898681f] - (SEMVER-MAJOR) lib: 添加 structuredClone() 全局方法 #39759
  • [e4b1fb5e64] - (SEMVER-MAJOR) lib: 公开 DOMException 为全局 #39176
  • [0738a2b7bd] - (SEMVER-MAJOR) stream: 在错误的流上完成也应该以错误的行为结束 #39235

更多详情可查看:https://nodejs.org/en/blog/release/v17.0.0/


以上所述就是小编给大家介绍的《Node.js v17.0.0 正式发布》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

网络是怎样连接的

网络是怎样连接的

[日]户根勤 / 周自恒 / 人民邮电出版社 / 2017-1-1 / CNY 49.00

本书以探索之旅的形式,从在浏览器中输入网址开始,一路追踪了到显示出网页内容为止的整个过程,以图配文,讲解了网络的全貌,并重点介绍了实际的网络设备和软件是如何工作的。目的是帮助读者理解网络的本质意义,理解实际的设备和软件,进而熟练运用网络技术。同时,专设了“网络术语其实很简单”专栏,以对话的形式介绍了一些网络术语的词源,颇为生动有趣。 本书图文并茂,通俗易懂,非常适合计算机、网络爱好者及相关从......一起来看看 《网络是怎样连接的》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具