异步迭代器

for await...of

async/await 的某些时刻,你可能尝试在同步循环中调用异步函数。例如:

async function process(array) {
  for (let i of array) {
    await doSomething(i)
  }
}

ES2018 引入异步迭代器(asynchronous iterators),await 可以和 for...of 循环一起使用,以串行的方式运行异步操作。

async function process(array) {
  for await (let i of array) {
    doSomething(i)
  }
}

for await...of 循环也可以用于同步遍历器。

;(async function () {
  for await (const x of ['a', 'b']) {
    console.log(x)
  }
})()
// a
// b
Copyright © 零度实验室 2020 all right reserved,powered by Gitbook修订时间: 2021-07-02 10:46:52

results matching ""

    No results matching ""