快速通道:
ECMAScript 2021 最终功能集于今年的3 月 9 日确定,2021 年6 月 22 日,第 121 届 Ecma 国际 宣布 ECMAScript 2021(ES12)成为事实的 ECMAScript 标准,并被写入 ECMA-262 第 12 版。先纵览下 ES2021 的新功能,看看现在这些特性在你工作中有没有用到吧:
-
String.prototype.replaceAll :有了这个 API,替换字符不用写正则了
-
Promise.any() :返回第一个 fullfilled 的 promise ,若全部 reject,则返回一个带有失败原因的 AggregateError。
-
新增逻辑赋值操作符: ??=、&&=、 ||=
-
WeakRefs:使用弱引用对象,该弱引用不会阻止 GC,并且可以在 GC 前使用 WeakRef.prototype.deref ( ) 解除该引用。
-
下划线 (_) 分隔符:使用 _ 分隔数字字面量以方便阅读
-
Intl.ListFormat :用来处理和多语言相关的对象格式化操作
-
Intl.DateTimeFormat API 中的 dateStyle 和 timeStyle 的配置项:用来处理多语言下的时间日期格式化的函数
1、replaceAll
模式的所有匹配都会被替代项替换。模式可以是字符串或正则表达式,而替换项可以是字符串或针对每次匹配执行的函数。并返回一个全新的字符串
在没有这个特性之前,我们会这样写
const str = “student is a real student”;
const newStr = str.replace(/student/g, “hahaha”);
console.log(newStr);