ECMAScript 2024 正式发布


ECMAScript 2024 现已获得 ECMA International 的批准。ECMAScript 是标准化的 JavaScript 语言,于 1997 年发布了第一版,现已发展成为世界上使用最广泛的通用编程语言之一。

本 Ecma 标准定义了 ECMAScript 2024 Language,是 ECMAScript 语言规范的第 15 版。

ECMAScript 2024(第 15 版)添加了调整 ArrayBuffers 和 SharedArrayBuffers 大小和传输功能;添加了新的 RegExp/vflag,用于创建具有更多高级功能的 RegExp,以处理字符串集;并引入了用于构建 Promises 的Promise.withResolvers便捷方法、用于聚合数据的Object.groupByMap.groupBy方法、用于异步等待共享内存更改的Atomics.waitAsync方法,以及String.prototype.isWellFormedString.prototype.toWellFormed方法,用于检查并确保字符串仅包含格式正确的 Unicode。

ArrayBuffers 此前已启用对二进制数据的内存处理。新功能扩展了ArrayBuffer构造函数以采用额外的最大长度,从而允许缓冲区的就地增长和收缩。还扩展了SharedArrayBuffer增加了允许就地增长的最大长度。

Promise.withResolvers 则被描述为一种管理异步操作的机制。该功能为 Promise 构造函数添加了一个名为 withResolvers 的静态方法,该方法会返回一个 promise,并方便地暴露其解析和拒绝函数。

一些未被纳入 ECMAScript 2024 的功能很有可能会出现在明年的 ECMAScript 2025 中,包括:重复命名捕获组(用于重复的 regex 捕获组)和 JavaScript 中的新 Set 方法(用于将unionintersection等方法添加到 JavaScript 的内置Set类中)。

具体可查看:

  • https://262.ecma-international.org/15.0/
  • https://www.ecma-international.org/wp-content/uploads/ECMA-262_15th_edition_june_2024.pdf

相關推薦

2022-06-29

ECMAScript 2022 现已获得 ECMA International 的批准。ECMAScript 是标准化的 JavaScript 语言,于 1997 年发布了第一版,现已发展成为世界上使用最广泛的通用编程语言之一。 本 Ecma 标准定义了 ECMAScript 2022 Language,是 ECMAScript 语

2024-10-22

0.0 主要更新亮点 默认启用ESM:在Node.js v23.0.0中,EcmaScript模块(ESM)现已默认启用,简化了应用使用。 停止支持32位Windows系统:在Node.js 23.0.0中,不再支持32位Windows,专注于现代环境。 稳定化--run命令:--run标志已

2023-04-20

ECMAScript 2023 的最终版本预计将于今年 6 月底发布。最新举行的一次 TC39 会议基本已经确定 了 ECMAScript 2023 的新功能列表,预计不会再有任何重大的编辑更改。 本文整理了在 2023 年进入 Stage 4 的几个提案。按照 TC39 的运

2022-09-24

类,而不得不依赖我们自己的实现)。通过采用更现代的ECMAScript标准,我们可以开始努力使Leaflet与现代JavaScript库所期望的相一致。 标准化的模块。当我们发布Leaflet v1时,JavaScript世界的格局非常不同,充满了竞争性的模块标

2024-09-28

任何产品中积极使用 JavaScript 商标。尽管 JavaScript(作为 ECMAScript 的一种实现)被全球数百万开发人员广泛使用,并为大多数 Web 应用程序提供支持,但他们仍必须强制执行该商标以保留对该名称的控制权。 为什么 Oracle 必须捍

2021-11-18

特性: 实验性功能:在夜间版本支持  Node.js 运行 ECMAScript 模块从 node_modules 支持 lib新的 Awaited 类型和对 Promise 对象的优化模板字符串可以用作判断符引入 es2022 模块(可以在异步函数之外使用 await)移

2023-08-26

p;(Inline Variable Refactoring) TypeScript 5.2 实现了即将推出的 ECMAScript 功能,称为装饰器元数据。此功能的关键思想是使装饰器可以轻松地在其使用的任何类上创建和使用元数据。 每当使用装饰器函数时,它们现在都可以访问其上

2022-06-20

Interface Service Provider WRY Chromium Backend Binding Rust Node.js (ECMAScript) Underlying Engine Rust V8 (C/C++) FLOSS Yes No Multithreading Yes Yes Bytecode Delivery Yes No Multiple Windows Yes Yes Auto Updater Yes Yes1 Custom App Icon Yes Yes Windows Binary Yes Yes macOS

2023-04-11

0.7.12 已发布。njs 以 nginx 插件的方式存在,它是 JavaScript/ECMAscript 的子集,实现了大部分的 JavaScript 语言功能,没有完全遵从 ECMAScript 标准,同时抛弃了 JavaScript 比较难懂的部分。njs 不通过 V8 引擎实现,而是通过一个更小、能

2022-04-15

0.7.3 已发布,njs 以 nginx 插件的方式存在,它是 JavaScript/ECMAscript 的子集,实现了大部分的 JavaScript 语言功能,没有完全遵从 ECMAScript 标准,同时抛弃了 JavaScript 比较难懂的部分。njs 不通过 V8 引擎实现,而是通过一个更小、能

2023-09-15

ems()方法。 njs 以 nginx 插件的方式存在,它是 JavaScript/ECMAscript 的子集,实现了大部分的 JavaScript 语言功能,没有完全遵从 ECMAScript 标准,同时抛弃了 JavaScript 比较难懂的部分。njs 不通过 V8 引擎实现,而是通过一个更小、能

2024-09-20

ode.js 的开发。JavaScript 的创造者 Brendan Eich 曾经表达过对 ECMAScript 名称的不满,ECMAScript 是 JavaScript 的标准规范名称。 文章强调 JavaScript 社区组织因 Oracle 的商标控制权而被迫避免使用 JavaScript 名称的困境,其呼吁 Oracle 主动放

2022-07-21

0.7.6 已发布,njs 以 nginx 插件的方式存在,它是 JavaScript/ECMAscript 的子集,实现了大部分的 JavaScript 语言功能,没有完全遵从 ECMAScript 标准,同时抛弃了 JavaScript 比较难懂的部分。njs 不通过 V8 引擎实现,而是通过一个更小、能

2023-02-09

0.7.10 已发布。njs 以 nginx 插件的方式存在,它是 JavaScript/ECMAscript 的子集,实现了大部分的 JavaScript 语言功能,没有完全遵从 ECMAScript 标准,同时抛弃了 JavaScript 比较难懂的部分。njs 不通过 V8 引擎实现,而是通过一个更小、能