Redian新闻
>
Node.js 22发布,增强了对ESM模块和Web API的支持

Node.js 22发布,增强了对ESM模块和Web API的支持

公众号新闻

作者 | Bruno Couriol
译者 | 张卫滨
策划 | 丁晓昀  

Node.js 团队最近发布了 Node.js 22。核心特性包括增强与 JavaScript 原生模块和 Web API 的兼容性,以及性能方面的改进。

Node.js 21 已经支持关键的 JavaScript 模块 API,其中包括import.meta对象。具体来说,Node.js 21 支持import.meta.dirnameimport.meta.filename。Node.js 22 增加了对 JavaScript 模块(ESM)图同步require的支持。发布说明中提供了详细信息:

如果启用--experimental-require-modulerequire()加载的 ECMAScript 模块满足如下的需求:
  • 通过在闭包 package.json 或“.mjs”扩展文件中使用“type”: “module”字段明确标记为 ES 模块。

  • 完全同步(不包含顶层的 await)。

require()会以 ES 模块的形式加载所请求的模块,并返回模块命名空间对象。在这种情况下,它类似于动态的import(),但是会同步运行并直接返回命名空间对象。我们计划在未来默认启用require(esm),而不必使用标记。技术博主 CoderOasis 提供了一个简单的 代码示例 来说明该特性:
// ES module: math.js  export function add(a, b) {  return a + b;  }  
// CommonJS module: app.js const { add } = require('./math.js'); console.log(add(2, 3)); // Output: 5

Node.js 21 已经部分支持 Navigator API,并试验性地支持浏览器兼容的 Websocket 客户端。在 Node.js 22 中,对 Websocket 的支持仍然是试验性的,但现在它已默认启用,也就是说开发人员不必再使用标志来激活它了。Node.js 22 在性能方面继续取得了一定进展。

Node.js 22 将 V8 JavaScript 引擎更新到了 12.4 版本,它采用了名为 Maglev 的优化 JIT 编译器(介于现有的 Sparkplug 和 Turbofan 编译器之间)。12.4 版本的更新包括 WebAssembly 垃圾收集和 Iterator Helpers 等功能。通过将流的最高水位标志(High Water Mark)从 16KiB 提高到 64KiB,Node.js 流的性能也得到了改善。由于这略微增加了内存的使用量,对于内存敏感的环境,可通过 setDefaultHighWaterMark() 调整默认值。通过提高 AbortSignal 实例创建的效率,fetch() API 和测试执行器(runner)的性能得到了提升。

Node.js 是一款开源软件,在 Open JS 基金会) 的 MIT 许可证下可用。鼓励通过 Node.js 贡献指南 和行为准则提供贡献和反馈。

查看英文原文

Node.js 22 Released with Increased Support for ESM Modules and Web APIs (https://www.infoq.com/news/2024/05/node-22-released/)

声明:本文为 InfoQ 翻译,未经许可禁止转载。

今日好文推荐

谷歌裁掉整个 Python 团队!PyTorch 创始人急得直骂人:“WTF!核心语言团队无可替换”

德国再次拥抱Linux:数万系统从windows迁出,能否避开二十年前的“坑”?

系统 bug 致百人入狱,砸了 2.8 亿元仍上云失败!二十年了,这家大企业被日本软件坑惨了

Rust 生态纯属炒作?3 年写了 10 万行代码的开发者吐槽:当初用 Rust 是被忽悠了

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
最新Ubuntu系统发布,变得更强了跑鞋这种东西,100块和1000块差别有多大?4月23日起,移民局对EB-5区域中心正式执行新审计标准,加强对投资人利益保护黄瑾慧 & Will Bruder和Weiss/Manfredi:突破学科边界,重筑建筑生态|Me&Master 第二季Universities Introduce Weight Loss Classes for Unfit Students要求葡萄个头年年更大!农民:要被Coles和WWS逼死!死刑之外,还要提升社会必要警察武力,增强法律权威可视化复旦发布层次性奖励学习框架,增强大模型人类偏好对齐广汽本田e:NP2极湃2发布,创新纯电车型打破市场同质化开源超闭源!通义千问Qwen2发布即爆火,网友:GPT-4o危美国空军签署第一份JSM巡航导弹合同,配属F-35进行防区外打击65个即插即用涨点模块! 5个最新Mamba模块美股基本面 - 2024_03_13 * 晨报 * 美国新兴对冲基金越来越受欢迎,行业洗牌悄悄酝酿?。微软员工抱怨公司已沦为OBB鸭 | OPPO Reno12发布;刘强东微信群跨国操盘京东;阿里宣布向大公司病开刀;马斯克反对美国对华电动汽车征收关税成年人的崩溃在刹那间全球最强开源模型Qwen2发布,阿里云为开闭源之争画下休止符5G-A首个标准冻结,补充和增强了哪些物联网的能力?祈雨Top of the World小米汽车发布,雷军直接“封神”?背后这些学科专业的支持功不可没!Java 近期新闻:JDK 2 进入Rampdown阶段一、JDK 24专家组成立、Apache NetBeans 22发布Cell重磅:我国学者发现,补充牛磺酸,可激活T细胞,增强癌症治疗效果波士顿顶级学区,麻州富豪聚集地,本周学区豪宅精选--Newton/Wellesley/Weston光模块,增速惊人用GPT-4纠错GPT-4!OpenAI推出CriticGPT模型;谷歌Gemma 2发布,与第一代相比性能更高丨AIGC日报Qwik vs. Next.js:你的下一个Web项目应该选哪个框架?麻州一流公立学区,富豪名流聚居地,本周豪宅精选--Weston/Newton/Wellesley/Winchester每位开发者都应该知道的7种 Node.js 设计模式3名青少年在天普大学向警察投掷石块和砖块|南费城居民起诉市政府,要求禁止改造罗斯福公园|切斯特溪失踪6岁女孩搜寻无果后放弃AAAI 2024 | 上交等提出自适应间距强化对比学习,增强多个模型的分类能力《尚书》坎坷这个儿童拉力球也太好玩了,增强亲子互动和手眼协调Rust编写的Web开发框架——同时支持Node和Python今年以来哪些板块和方向表现最好?未来持续性如何?DNF手游Q2发布,腾讯电话会实录:手握8款长青游戏,聚焦大作
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。