ES9 已经到来,了解异步 generator 和异步 generator 函数

ES9 是 ECMAScript 的第九个版本,也被称为 ECMAScript 2018。它引入了许多新的特性,包括异步 generator 和异步 generator 函数。这些新特性可以帮助开发者更方便地处理异步代码,提高代码的可读性和可维护性。

异步 generator

异步 generator 是一种特殊的生成器函数,它可以异步地生成一系列值。它的语法与普通的生成器函数非常相似,只是在函数名前面加上了 async 关键字。

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

异步 generator 返回的是一个异步迭代器对象。这个迭代器对象可以通过 for await...of 循环来遍历异步生成的值。

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

上面的代码会依次输出 1、2、3。

异步 generator 函数

异步 generator 函数是一种结合了异步和生成器的特殊函数。它可以异步地生成一系列值,并且可以在生成值的同时处理异步操作。

异步 generator 函数的语法与普通的生成器函数非常相似,只是在函数名前面加上了 async 关键字,并且在函数体内部可以使用 await 关键字来处理异步操作。

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

上面的代码定义了一个异步 generator 函数,它会每隔一秒钟生成一个递增的数字。在生成数字的同时,它会等待一个 Promise 对象来模拟异步操作。

异步 generator 函数返回的是一个异步迭代器对象。这个迭代器对象可以通过 for await...of 循环来遍历异步生成的值。

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

上面的代码会每隔一秒钟输出一个递增的数字。

总结

ES9 引入的异步 generator 和异步 generator 函数可以帮助开发者更方便地处理异步代码。它们的语法与普通的生成器函数非常相似,但是可以异步地生成一系列值,并且可以在生成值的同时处理异步操作。这些新特性可以提高代码的可读性和可维护性,值得开发者们学习和掌握。

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/66261853c9431a720c26923f