JavaScript 的未来——值得关注的功能

2025-05-25

JavaScript 的未来——值得关注的功能

我们认为很多 Javascript 特性都是理所当然的map,、、、/ 、三元组......当它们被引入时filter每一个都对我们的代码库产生了重大影响,并允许我们编写更干净、通常性能更高的代码。reduceconstlet

让我们简单介绍一下谁决定了 Javascript 的未来,然后介绍一些应该在不久的将来和不久的将来实现的功能。

如果您只对具体功能感兴趣,请点击此处跳至下一部分👇

保罗·埃施·洛朗-oZMUrWFHOB4-unsplash

ECMA?TC39?

1959年,计算机的应用越来越广泛,也带来了许多新的制造商。显而易见的是:他们需要找到一种方法来标准化诸如编程之类的技术操作(但不限于此)。

于是,1960 年 4 月 27 日,欧洲计算机制造商协会 (ECMA) 在布鲁塞尔成立,旨在规范这一混乱局面。

注意:1994 年,ECMA 更名为 ecma international,他们放弃了首字母缩略词,而使用后一个词来表示其国际规模。

ECMA 每年都会选举一位新主席,通常来自计算机科学领域的主要参与者:IBM、HP、西门子、飞利浦等。来自 IBM 的 Jochen Friedrick 目前担任 2018-2019 年期间的主席。

它的结构如下:

截图于 2019-10-23 09:18:17

ECMA 的全体大会由普通会员组成,是其最高权力机构。大会负责管理 ECMA 的管理层、秘书处和执行委员会。目前,大会由科技界一些巨头组成,包括苹果、Airbnb、Facebook、Netflix 和谷歌。完整会员名单

秘书处的职责是组织和创建处理计算机科学特定方面的技术委员会(TC)和技术组(TG)。

每个 TC 管理着编程语言、产品安全以及 ECMAScript 等事物的发展和未来。

截图于 2019-10-23 09 22 50

现在您对事物的工作原理已经有了大致的了解,但是新 JS 功能的生命周期是怎样的呢?

TC39 提案

因此,TC39 管理着我们喜爱的(有时是讨厌的)语言的演变,他们所做的几乎所有事情都是开源的,因此查看新提案以及它们随着时间的推移如何演变总是很酷的。

ECMAScript 特性的各个阶段

ECMAScript 的一项新特性会经历 5 个阶段:

  • 第 0 阶段(稻草人):允许对规范进行初始输入
  • 第一阶段(提案):提出增补理由,描述解决方案的形式并识别潜在挑战
  • 第 2 阶段(草案):允许使用形式规范语言精确描述语法和语义
  • 第 3 阶段(候选阶段):表示需要进一步完善,需要来自实现和用户的反馈。基本上要求所有语义、语法和 API 都完整描述。
  • 第四阶段(完成):表明新增内容已准备好纳入正式的 ECMAScript 标准

您可以在此处获取更多信息并深入了解这些阶段的详细信息

第 4 阶段特点

让我们来看看第四阶段的具体功能,也就是那些已经完成并将被纳入 ECMAScript 最早的实用标准版本的功能。我还将展示它们当前的浏览器支持情况。

Object.fromEntries

代码片段 Object.fromEntries

Array.flatMap

flatMap 代码片段

MDN文档提到它甚至效率更高一些。

BigInt

BigInt 代码片段

globalThis

globalThis 代码片段

String.trimStart&String.trimEnd

trimStart 代码片段

Promise.allSettled

Promise.allSettled 代码片段

第 3 阶段功能

第三阶段的功能近期不会发布,但其中一些功能非常酷,值得一提。

不过我不会提及它们的浏览器支持,因为这与主题无关。

可选链式调用

这个可能是我最喜欢的,再见user && user.name

可选链式代码片段

空值合并

你知道 JavaScript 有时会有多奇怪吗?比如当你需要对一个等于 0 的值进行验证,却忘记了它会被视为 false 吗?

空值合并代码片段

你学到了什么新东西吗?哪个功能最让你兴奋?我很乐意在这里或在 Twitter 上@christo_kade听听你的想法!

文章来源:https://dev.to/christopherkade/the-future-of-javascript-features-to-keep-an-eye-on-3d0h
PREV
我终于明白了什么是类 Chris 类 Daniel 类 我们得到了什么好处?结语 额外提示
NEXT
为您在 DEV 上的文章引入横幅生成器