Node.js v20.10.0 (LTS)


Node.js v20.10.0 已正式发布,代号 'Iron'。根据发布时间表,由于上月 Node.js 21 已正式发布,因此 Node.js 20 就变成了长期支持版本 (LTS)。

新版本主要变化

  • 引入新的--experimental-default-typeflag,用于改变 Node.js 的默认 module
    通过设置 --experimental-default-type=module,可以将原本隐式的 CommonJS 模块解释为 ES 模块。
  • 引入新的--experimental-detect-moduleflag,用于检测 JavaScript 中不明确的 ESM 语法
    该 flag 用来自动检测 ES 模块的语法。对于“模棱两可”的文件,Node.js 会解析文件以检测是否包含 ES 模块语法,如果检测到,则将其作为 ES 模块运行,否则将其作为 CommonJS 模块运行。
  • 为文件系统函数引入新的 flush 选项
    在写入文件时,可能会出现数据不立即刷新到永久存储的情况。为了解决这个问题,fs.writeFile 系列函数新增了 flush 选项,可以在成功写入操作结束时强制刷新数据。
  • 新增实验性的 WebSocket 客户端
    使用 --experimental-websocket flag,可以添加一个全局的 WebSocket 对象,符合 WHATWG 的标准。
  • 修复 vm.Script 的 V8 编译缓存支持

详情查看发布公告

延伸阅读:Node.js 21 正式发布


相關推薦

2023-12-05

Node.js v18.19.0 已发布,代号 'Hydrogen'。Node v18.19.0 是一个长期支持版本 (LTS),这意味着它将获得更长的支持和维护。LTS 版本通常更加稳定和可靠,适合用于生产环境。 主要变化 将 npm 升级到 v10 在 Node.js 20 中经过两个月的试

2022-10-19

Node.js 19 在今天正式发布了,此次更新包括将 V8 JavaScript 引擎更新到 10.7,以及默认启用 HTTP(s)/1.1 KeepAlive。 Node.js 18 在本月晚些时候将进入长期支持(LTS),Node.js 19 将取代 Node.js 18 成为 "Current" 版本。 node --watch(实验性) 运

2022-10-18

Node.js 发布了两个更新,分别是 v16.18.0 (LTS) &  v18.11.0。 Node v16.18.0 (LTS) 主要变化 [1cc050eaa8] - (SEMVER-MINOR) assert: 添加getCalls和reset到 callTracker #44191 [e5c9975f11] - (SEMVER-MINOR) crypto: 允许 zero-length secret KeyObje

2022-09-25

Node.js 发布了 3 个更新,分别是 14.20.1 (LTS)、16.17.1 (LTS) 和 18.9.1。三个版本的主要更新都是修复安全问题。 14.20.1 (LTS) CVE-2022-32212: 在 macOS 上的 --inspect 中重新绑定 DNS(高危) CVE-2022-32213: 通过 obs-fold 机制实现的绕过(中等

2023-08-11

Node.js 为多个分支发布了更新,分别是:v16.20.2 (LTS)、v16.20.2 (LTS) 和 v20.5.1 (Current)。 根据发布公告,此次更新主要是修复安全漏洞。 CVE-2023-32002:可以通过 Module._load 绕过策略(高危) CVE-2023-32006:可以通过 module.cons

2023-07-20

Node.js v18.17.0 现已发布,一些值得关注的变化包括: Ada 2.0 此版本附带最新版本的 URL 解析器 Ada。此更新为 URL 解析带来了显着的性能改进,包括对 node:url 中的 url.domainToASCII 和 url.domainToUnicode 函数的增强。 Ada 2.0 已集成到 Node

2023-01-07

Node.js 已正式发布 18.13.0 “Hydrogen”  LTS 版本,此版本带来一些新功能: 重要变化 添加对外部共享 js 内置函数的支持 #44376 默认情况下,构建 Node.js 会将所有依赖项都捆绑到 Node.js 二进制文件本身。但一些 Node.js 发行版更

2023-07-08

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

2023-06-22

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

2023-06-13

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

2022-11-16

Node.js v19.1.0 现已发布,此版本一些更新内容包括: Notable changes 支持 Node.js 测试运行器上的 function mocking #45326 node:test 模块在测试过程中通过顶层的 mock object 支持 mocking。 test('spies on an object method', (t) => { const number =

2023-01-09

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

2023-10-27

titbit v23.3.0 已经发布,Node.js 环境的 Web 后端框架 此版本更新内容包括: bodyparser.js 升级body解析方式。 其他一些细节更新。 详情查看:https://gitee.com/daoio/titbit/releases/v23.3.0

2023-10-31

titbit v23.3.5 已经发布,Node.js 环境的 Web 后端框架 此版本更新内容包括: bodyparser.js 解析multipart/form-data格式的数据去掉了split方式,改为跳跃式,提高了性能和安全性。并限制消息头数量,对超过最大消息头长度的文件不