
JavaScript平台 Node.js 已发布 版本 26 是一个重要版本,标志着旨在浏览器外运行 JavaScript 代码的环境发展迈上了一个新的台阶。这是新的分支。 电流其重点在于实现标准 API 的现代化,并为生态系统提供数年的支持。
这个新版本 节点.js 26.0.0 现在可以从官方网站下载,该版本面向希望尽快测试新功能的开发者和团队。虽然目前仍处于开发阶段,但项目组已制定了将其过渡到长期支持分支的时间表,这对于依赖稳定且可预测周期的公司尤为重要。
Node.js 发布日历和支持周期 26
分支 26 已合并到以下版本中: 长期支持但这项工作将分两个阶段进行:大约六个月的时间里,它将作为……运行。 电流该版本将获得新功能和调整,并在经过代码稳定期后于 10 月过渡到 LTS 状态。过渡完成后,26.x 系列版本将持续维护至 2029 年 5 月,期间将提供安全补丁和错误修复。
与此同时,平台团队还维护着其他具有不同生命周期终止日期的分支,这有助于规划大型项目的迁移。 节点.js 24.x此外,获得扩展支持的版本将继续获得更新,直至 2028 年 4 月,而 22.x 分支计划于 2027 年 4 月结束。相比之下,LTS 20.x 系列已经停止维护,中间版本 25.x 将于 6 月初停止支持,这将促使团队过渡到更新的系列。
时间 API:一种处理日期和时间的新方式
对于每天进行编程的人来说,最明显的变化是默认启用 临时 API一组类型和方法,为传统的对象提供了一种现代化的替代方案 Date此 API 旨在简化日期和时间的管理,该领域历来因时区、夏令时变更和格式转换而产生错误。
使用 Temporal 类型,可以根据项目的具体需求以不同的方式表示时间。例如,应用程序可以使用诸如以下类型来处理日期和时间,而无需将其与特定的时区关联: 临时.普通日期, 临时.PlainTime y 临时.普通日期时间适用于固定时间表、预订或登记,其中只考虑当地价值。
当上下文需要考虑时区时,API 提供 时间.分区日期时间这会将日期和时间与特定时区关联起来,以确保在不同地区旅行或应用时区规则时计算的准确性。此外,为了存储和比较绝对时间,还引入了以下内容: 临时的。即时的这表示自 1970 年 1 月 1 日以来经过的纳秒数,这对于分布式系统或审计来说是实用的。
除了数据类型之外,该 API 还直接集成了转换、格式化和时间运算功能,允许您添加或删除句点、更改时区并生成易于阅读的输出,而无需依赖外部库。事实上, 临时功能默认启用。 Node.js 26 促进了其在需要可靠日历管理的项目中的逐步应用,从金融应用程序到物流服务。
V8 发动机更新和新增 JavaScript 功能
此次版本更新的另一个关键要素是执行引擎的飞跃。 V8 版本更新至 14.6,与 Chromium 146 中使用的代码相同。此次更新不仅带来了性能提升,还增加了语言特性和内部优化,从而影响了应用程序的响应时间。
在众多直接惠及开发者的新功能中,有一项是…… 合并多个迭代器 使用该方法合并成一个 Iterator.concat()此功能简化了对来自不同来源的数据序列的操作,无需创建中间结构,这在处理处理大量信息的服务器上的数据流时非常有用。
该发动机还采用了以下规格: 插入 收藏品 Map y WeakMap 在 JavaScript 中,得益于此功能,处理键值对变得更加直接,因为可以在单个操作中插入或更新条目,从而减少所需的代码量并最大限度地减少并发环境中潜在的竞争条件。
Undici 8 和 HTTP 客户端的改进
关于网络通信,Node.js 26 更新了官方 HTTP 客户端。 undici 升级到 8.x 系列。具体来说,项目内部的各种消息来源表明,将采用 8.0.2 版本,这在稳定性、性能以及与当前 Web API 需求的兼容性方面都取得了进步。
此次客户端更新对于部署在基础设施上的服务尤为重要,因为这类服务需要频繁地与微服务、第三方平台和内部系统进行交互。新的 undici 分支改进了持久连接管理,更新了对 HTTP/1.1 和 HTTP/2 的支持,并优化了资源消耗,从而降低了延迟并更好地利用了可用硬件。
兼容性和构建要求的变化
切换到 Node.js 26 也意味着构建环境和相关工具需要进行调整。从源代码构建此版本需要…… 最低要求,GCC 13.2此举使项目与较新的编译器保持一致,并确保能够使用最新的二进制级优化。对于仍在使用旧版本工具的持续集成环境或构建服务器,可能需要进行相应的更新。
与此同时,新分支停止支持 Python的3.9 其工具链中存在版本限制,这意味着依赖于该版本的配置需要迁移到更新的语言版本。此举是更广泛的举措的一部分,旨在移除遗留依赖项,并确保项目的基础软件能够持续获得安全更新。
Node.js 26 中的弃用和已停用的 API
除了新功能之外,开发团队还引入了一系列兼容性变更,在迁移生产项目之前应该进行审查。其中一点重点是: 撤回该方法 http.Server.prototype.writeHeader()传统上用于从服务器发送 HTTP 标头。从这个版本开始,官方建议使用 http.Server.prototype.writeHead()这条路线仍然是目前支持的路线。
此外,此版本标志着该周期的结束。 磷酸二酯酶0182与模块相关 crypto作为清理老旧或存在问题的 API 的例行流程的一部分,弃用了…… module.register()这一变化将影响那些使用更高级或定制模块加载系统的用户,迫使他们重新审视此功能的潜在用途。
新分支还移除了启动选项 --experimental-transform-types这项原本属于实验性功能集的功能已被移除。移除该功能表明,团队倾向于通过其他方式或在语言和平台生命周期的后期阶段整合类型转换支持,从而减少实验性标志的数量。
总体而言,Node.js 26 的发布标志着该生态系统的一次重大更新:它通过现代化的 API 强化了基于时间的基础架构,更新了 V8 引擎,改进了 HTTP 客户端,并在清理旧版接口方面取得了进展。凭借长达 2029 年的支持期限和清晰的路线图,新版本有望成为那些既追求长期稳定性又不愿牺牲平台最新功能的用户的可靠选择。