导航
×
   ❮   
HTML CSS JavaScript PHP Go ECMS

JavaScript 教程

JS 简介 JS 如何使用 JS 输出 JS 语法 JS 语句 JS 注释 JS 变量 JS 运算符 JS 条件语句 JS 循环 JS 字符串 JS 数字 JS 函数 JS 对象 JS 日期 JS 数组 JS 类型化数组 JS 集合 JS Map 映射 JS Math JS 正则表达式 JS 数据类型 JS 错误 JS 事件 JS 编程 JS 关键字参考 JS 保留关键字参考 JS 运算符参考 JS 运算符优先级 JS UTF-8 字符 JS UTF-8 符号 JS UTF-8 表情符号 JS 版本

JavaScript 2021 新特性


JavaScript 2021 新特性

功能 描述    
Promise.any() 接受多个 Promise 作为输入,并返回一个 Promise  
String replaceAll() 替换字符串中所有出现的子字符串    
数字分隔符 新增数字分隔符 (_),使数字更易读  

浏览器支持

ECMAScript 2021 自 2021 年 4 月起,所有现代浏览器均已支持该规范:

         
Chrome
85
Edge
85
Firefox
79
Safari
14.1
Opera
71
2020年8月 2020年8月 2020年7月 2021年4月 2020年9月

JavaScript Promise.any()

Promise.any() 是 JavaScript 中的一个静态方法,它接受一个 Promise 对象作为输入,并返回一个 Promise 对象。

示例

// 创建一个 Promise
const myPromise1 = new Promise((resolve, reject) => {
  setTimeout(resolve, 200, "King");
});

// 创建另一个 Promise
const myPromise2 = new Promise((resolve, reject) => {
  setTimeout(resolve, 100, "Queen");
});

// 当任何 Promise 满足时运行
Promise.any([myPromise1, myPromise2]).then((x) => {
  myDisplay(x);
});
亲自试一试 »

JavaScript 字符串 replaceAll()

ES2021 引入了字符串方法 replaceAll():

示例

text = text.replaceAll("Cats","Dogs");
text = text.replaceAll("cats","dogs");
亲自试一试 »

replaceAll() 方法允许您指定一个正则表达式,而不是要替换的字符串。

如果参数是正则表达式,则必须设置全局标志 (g),否则会抛出 TypeError。

示例

text = text.replaceAll(/Cats/g,"Dogs");
text = text.replaceAll(/cats/g,"dogs");
亲自试一试 »

注意

ES2020 引入了字符串方法 matchAll()。


JavaScript 数字分隔符 (_)

ES2021 引入了数字分隔符 (_),使数字更易于阅读:

示例

const num = 1_000_000_000;
亲自试一试 »

数字分隔符仅用于视觉效果。

示例

const num1 = 1_000_000_000;
const num2 = 1000000000;
(num1 === num2); 
亲自试一试 »

数字分隔符可以放在数字中的任何位置:

示例

const num1 = 1_2_3_4_5;
亲自试一试 »

注意

数字分隔符不能位于数字的开头或结尾。

在 JavaScript 中,只有变量名可以以 _ 开头。


freew3c.com 中文网是独立运营的中文开发者学习平台,与 freew3c.com 无关联。提供的内容仅用于学习和测试,不保证内容的正确性。


Copyright @2020-2026 京ICP备888888号-8