主要观点:Ecma 技术委员会 39(TC39)推进了 9 个 JavaScript(ECMAScript)提案,包括 Array.fromAsync、Error.isError 和 explicit resource management with using
等三个新语言特性成为标准,同时还有其他提案在不同阶段推进。
关键信息:
Array.fromAsync
可从异步可迭代对象创建数组,简化了从异步生成器或流等收集数据的过程,如在 httptransfer 模块中的示例所示。Error.isError()
方法可可靠检查值是否为错误实例,替代的instanceof Error
不可靠。- Explicit Resource Management 引入
using
声明用于管理需要显式清理的资源,避免了资源管理模式不一致的问题。 - Import Attributes 推进至 Stage 3,可给导入声明添加元数据。
- 其他提案如 Promise.try、RegExp.escape 等在不同阶段推进。
- TC39 负责 JavaScript 的演进,提案需经过不同成熟阶段,达到 Stage 4 可安全使用,但浏览器支持可能滞后。
重要细节: Array.fromAsync
新语法示例展示了从异步操作中直接创建数组。Error.isError()
在跨域环境中instanceof Error
可能返回假阴性。- Explicit Resource Management 避免了管理多个资源时的一些问题。
- Import Attributes 可用于提供模块预期类型的信息。
- TC39 成员包括主要浏览器厂商,提案各阶段及标准纳入条件。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。