ES9 令人惊喜的新特性

阅读时长 5 min read

ES9,全称为 ECMAScript 2018,发布于 2018 年 6 月份。相较于此前的版本,ES9 的更新内容比较少,但是其中有一些特性仍然非常值得我们关注。本文就来详细介绍 ES9 中令人惊喜的新特性。

1、Promise.prototype.finally()

在 JavaScript 中,Promise 已经成为了异步编程中非常重要的解决方案。而在 ES9 中,Promise 对象新增了一个实例方法 finally(),它的作用是无论 Promise 状态如何都会执行,一般用于释放资源或清理工作。

下面是使用 finally() 的示例代码:

2、Rest/Spread 属性

Rest/Spread 也是 ES9 中新增加的语法特性。它可以让我们更加便捷地操作对象和数组。在此之前,Rest/Spread 语法主要用于函数参数和对象解构,而在 ES9 中则扩展支持了对象和数组字面量。

2.1 Object 属性 Rest/Spread

我们可以使用 Rest/Spread 语法来批量获取或设置对象属性:

2.2 Array 元素 Rest/Spread

我们也可以使用 Rest/Spread 语法批量操作数组元素:

3、async/await 的增强

在 ES8 中,我们已经可以使用 async/await 简化异步编程了。而在 ES9 中,async/await 又有了一些增强:

3.1 Async Iterators

在 ES9 中,我们可以使用 for-await-of 语法更加方便地遍历异步迭代器。例如:

3.2 Promise.prototype.then()/catch() 中使用 async/await

在 ES9 中,我们也可以在 Promisethen()catch() 方法中使用 async/await 语法:

4、Rest 属性简写

ES9 中,我们可以通过省略属性名的方式来创建对象:

5、正则表达式命名捕获组

在 ES9 中,我们可以给正则表达式中的捕获组设置命名:

结束语

本文详细介绍了 ES9 中令人惊喜的新特性。这些特性可以让我们更加方便地进行 JavaScript 开发,提升我们的开发效率。希望本文能够对您的学习和工作有所帮助。

Source: FunTeaLearn,Please indicate the source for reprints https://funteas.com/post/677fd32ece7f4861251c7e55