异步生成器功能与生成器功能相同。异步生成器函数将返回一个对象,而异步生成器的方法(例如next)将为{value,done}抛出并返回promise,而不是直接返回。
这是来自GitHub的示例,显示了返回异步生成器对象的函数-
async function* readLines(path) { let file = await fileOpen(path); try { while (!file.EOF) { yield await file.readLine(); } } finally { await file.close(); } }