编辑:请仔细阅读。这确实有效。我试图确切地理解为什么。
编辑2:我知道异步使事情异步。为什么这不适用于 for...in 循环呢?
我正在使用节点 v10.13.0。
一段时间以来,我一直在 Javascript 中使用 for...of 循环在循环结构中执行异步任务。我毫不怀疑它按预期工作。
我刚刚遇到了一种情况,我必须解释为什么这是有效的,并意识到我实际上不知道。这是一个令人费解的示例,只是为了帮助可视化我的意思:
async function myFunc(array) {
for (var item of array) {
await asyncRequest();
}
}
array在这个函数中,什么和是什么并不重要asyncRequest,关键是对于数组中的每个项目,程序执行asyncRequest在经过循环之前以看似顺序的方式执行每个项目。
我查看了https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for...of,我发现 for...of 循环遍历可迭代对象。好吧,一个数组绝对是可迭代的,但这个事实似乎无关。
对这种行为有任何见解吗?
幕布斯6054654
相关分类