ECMAScript 2018: 新特性 & 重点标记

阅读时长 5 分钟读完

ECMAScript 2018,也称为ES9,是JavaScript的最新版本,于2018年6月发布。它引入了一些新特性和重点标记,这些特性和标记可以帮助开发人员更有效地编写JavaScript代码。本文将介绍ES2018的新特性和重点标记,并提供示例代码和指导意义。

新特性

异步迭代

ES2018引入了异步迭代器,它允许开发人员在异步代码中使用for-await-of循环。异步迭代器是一个具有next()方法的对象,该方法返回一个Promise,该Promise将在下一个值可用时解析。以下是使用异步迭代器的示例代码:

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

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

上述代码将依次输出1、2和3。

Rest/Spread 属性

ES2018还引入了Rest/Spread属性,它允许开发人员在对象和数组字面量中使用...语法。Rest属性允许将对象或数组中的所有剩余属性捆绑到一个变量中,而Spread属性允许将一个对象或数组中的所有属性展开为单独的属性。以下是使用Rest/Spread属性的示例代码:

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

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

Promise.prototype.finally()

ES2018还引入了Promise.prototype.finally()方法,它允许开发人员在Promise被解决或拒绝后执行一个函数。该方法返回一个新的Promise,该Promise将在finally()方法执行完毕后解析为相同的值或原因。以下是使用Promise.prototype.finally()的示例代码:

上述代码将依次输出“finally”和1。

重点标记

async/await

async/await是ES2018中最重要的标记之一。它允许开发人员使用异步代码的同步方式编写代码。async函数返回一个Promise,并允许您在其中使用await关键字等待异步操作的完成。以下是使用async/await的示例代码:

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

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

上述代码将从URL https://api.example.com/data 获取JSON数据,并在获取数据后将其解析为JavaScript对象。

Template Literals

模板字面量是一种在ES6中引入的标记,但在ES2018中仍然是一个重点标记。它允许开发人员在字符串中插入表达式,并使用反引号(`)而不是引号或双引号来定义字符串。以下是使用模板字面量的示例代码:

Object.values() 和 Object.entries()

Object.values()和Object.entries()是两个新的Object方法,它们分别返回对象的值数组和键值对数组。以下是使用这些方法的示例代码:

总结

ES2018引入了许多新特性和重点标记,这些特性和标记可以帮助开发人员更有效地编写JavaScript代码。异步迭代、Rest/Spread属性、Promise.prototype.finally()、async/await、模板字面量、Object.values()和Object.entries()是ES2018中最重要的特性和标记之一。熟练掌握这些特性和标记可以使您的JavaScript代码更加简洁和易于维护。

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

纠错
反馈

程序员教程

精选优质教程,助你快速提升技术实力

程序员面试题库

海量优质面试题,助你轻松应对技术面试