for await...of 不是 async 版 for...of,而是一套"随时间产生的值流"消费模型。
- 普通
for...of遍历同步数组,迭代立刻拿到值;for await...of每次迭代要等下一个值,生产者产出与消费者消费完全解耦 - 这就是流式响应的底层逻辑:Node Stream、AsyncGenerator、LLM streaming 本质上是同一件事
- 实现
Symbol.asyncIterator协议就能让任意对象变成可异步遍历的流 - Async Generator 是最简洁的生产端实现:
yield产出,for await...of消费 - 适用场景:分页 API、Stream、实时事件——凡是数据"不是一次性到齐"的地方

