ES12 引入了什么新特性?

阅读时长 5 分钟读完

ES12(也称为 ECMAScript 2021)是 JavaScript 语言规范的最新版本,该版本于 2021 年 6 月发布。在这个版本中,引入了一些新的功能和更改,旨在增强开发人员的生产力和灵活性。在本文中,我们将探讨 ES12 引入的一些新特性。

1. 数组填充方法

ES12 引入了三个数组填充方法:fill(), fillWithin()at()

fill()

fill() 方法可以用指定值填充数组中的所有元素。如果只传递一个参数,则该值将用作填充值。

fillWithin()

fillWithin() 方法可以在指定的起始索引和终止索引之间用指定值填充数组元素。

at()

at() 方法返回数组中指定索引的元素。如果索引为负,则从数组末尾开始计数。

2. Promise.any()

Promise.any() 方法接收一组 Promise 对象并返回一个新的 Promise 对象,该对象由最先解决的 Promise 对象的解决结果解决。如果这些 Promise 对象全部被拒绝,则返回一个拒绝原因数组。

3. 逻辑赋值运算符

ES12 引入了三个逻辑赋值运算符:&&=, ||=??=。这些运算符允许我们使用简写语法执行逻辑运算和赋值。

&&= 运算符

&&= 运算符表示“如果左侧的值可以转换为 false,则不赋值;否则将右侧值赋予左侧值。”

-- -------------------- ---- -------
--- --- - ---
----- ------- - -----

--- --- --------
----------------- -- --

--- - --
--- --- --------
----------------- -- -

||= 运算符

||= 运算符表示“如果左侧的值可以转换为 true,则不赋值;否则将右侧值赋予左侧值。”

-- -------------------- ---- -------
--- ---- - --------
----- ----------- - ------------

---- --- ------------
------------------ -- -------

---- - ---
---- --- ------------
------------------ -- -----------

??= 运算符

??= 运算符表示“如果左侧的值为 nullundefined,则将右侧值赋予左侧值。”

-- -------------------- ---- -------
--- -------- - -----
----- --------------- - --------

-------- --- ----------------
---------------------- -- -------

-------- - --------
-------- --- ----------------
---------------------- -- -------

4. 匹配全部

ES12 引入了一种新的字符串匹配方法:matchAll()。与 match() 方法不同,在一个字符串中找到所有匹配项时,matchAll() 方法返回一个迭代器,我们可以遍历这个迭代器并处理每个匹配项。

结论

ES12 引入的这些新特性和更改使得 JavaScript 编程变得更加高效和简单。通过使用这些新特性,我们可以编写更简洁、易于维护和可读性更好的代码。学会这些新特性将帮助我们提高开发效率,同时也更好地了解和使用 ES12。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6731c6ed0bc820c5823a5874

纠错
反馈