跳到內容

eslint/no-await-in-loop 效能

此規則的作用

此規則禁止在迴圈主體內使用 await。(for, for-in, for-of, while, do-while)。

為什麼這樣不好?

這可能表示非同步操作沒有有效地平行化。相反地,它們是依序執行的,這可能會導致較差的效能。

範例

此規則的 錯誤 程式碼範例

javascript
async function bad() {
  for (const user of users) {
    const userRecord = await getUserRecord(user);
  }
}

此規則的 正確 程式碼範例

javascript
async function good() {
  await Promise.all(users.map((user) => getUserRecord(user)));
}

參考資料

以 MIT 授權條款發布。