Node.js 18.13.0(长期支持版)

Node.js 18.13.0(长期支持版)

💡 原文英文,约800词,阅读约需3分钟。
📝

内容提要

Node.js 默认将所有依赖打包到二进制文件中,但最近的更新允许将包含 JavaScript 代码的依赖外部化,增强了灵活性。此外,File 类新增了 lastModified 和 name 属性,node:test 模块支持测试中的模拟功能。

🔎

延伸解读

依赖外部化对发行版的意义

Node.js 默认将所有依赖打包进二进制文件,但本次更新允许将包含 JavaScript 代码(包括 WASM)的依赖也外部化。这一改动不影响官方发布的二进制文件,而是为其他发行版提供了灵活性,使它们能按需将更多依赖移出核心,便于独立更新或替换。

File 类新增属性的用途

File 类属于 FileAPI,可在 Blob 适用的场景中使用,例如 URL.createObjectURL 和 FormData。新增的 lastModified 属性记录文件最后修改时间(毫秒),name 属性保存文件名。这两个属性是 Blob 所没有的,方便在文件上传等场景中直接获取元数据。

node:test 模块的模拟功能

node:test 模块现在支持通过顶层 mock 对象在测试中进行模拟。例如,可以用 t.mock.method 监视对象方法,并断言其调用次数。这为内置测试框架补充了常见的测试替身能力,减少对外部模拟库的依赖。

❓

Q&A

Node.js 18.13.0的新特性是什么?

Node.js 18.13.0允许将包含JavaScript代码的依赖外部化,并新增File类的lastModified和name属性。

如何在Node.js中使用File类?

File类可以用于创建Blob对象的URL和FormData,并提供lastModified和name属性。

node:test模块的功能是什么?

node:test模块支持在测试中使用模拟功能,通过顶层模拟对象进行测试。

Node.js 18.13.0如何处理依赖?

默认情况下,Node.js将所有依赖打包到二进制文件中,但更新后可以选择将JavaScript代码的依赖外部化。

File类的lastModified属性有什么用?

lastModified属性提供了文件的最后修改时间,以毫秒为单位。

Node.js 18.13.0的更新对开发者有什么影响?

更新增强了灵活性,允许开发者根据需要外部化JavaScript依赖,改善了依赖管理。

🏷️

标签

➡️

继续阅读