我们可以对 JavaScript forEach 异步执行回调吗? [复制]
Posted
技术标签:
【中文标题】我们可以对 JavaScript forEach 异步执行回调吗? [复制]【英文标题】:Can we execute callback to JavaScript's forEach asynchronously? [duplicate] 【发布时间】:2018-07-26 12:51:44 【问题描述】:var a = [1,2,3,4,5,6,7,8,9,10];
a.forEach(item =>
...
);
console.log('all done');
在浏览器或节点环境中是否有可能在 forEach 完成执行之前控制台“全部完成”?如果是,那么什么时候?
【问题讨论】:
【参考方案1】:没有。您的代码是同步的,因此除非您在异步块中显式执行 .forEach
函数,否则它永远不会发生。
【讨论】:
我该怎么做。能不能给我举个例子。 是的,jsfiddle.net/4udkgLqd【参考方案2】:没有。 forEach
是一个同步函数。
可以在其中调用异步函数,它们可能还没有完成,但循环本身已经完成了。
【讨论】:
以上是关于我们可以对 JavaScript forEach 异步执行回调吗? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
NodeJs, javascript: .forEach 似乎是异步的?需要同步
如何形象地解释 JavaScript 中 map,foreach,reduce 间的区别