繁体   English   中英

如何等待函数完成for js循环?

[英]How to wait function to finish in for loop js?

我有一个循环遍历函数的for循环,我希望该循环等待直到函数完成才能到达下一个函数。 我怎么做?

middlewares = []

for (let i in middlewares) {
    middlewares[i]()
}

如果中间件函数在异步时返回promise,则以下解决方案将起作用

async function loop(middlewares) {
   for (let fn of middlewares) {
     await fn();
   }
}

loop(middlewares)
  .then(() => console.log("finished");

你不能因为for环路是同步的。 我建议为此使用异步

您可以使middlewares功能异步功能。 这样可以更轻松地等到功能完成后再移至下一个功能。 制作异步函数很容易: async function(...) {...} 在这里阅读有关它们的信息

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM