我有这样一个循环:如何等待一个循环的完整执行Node.js加载
var someArray = [];
for(var i = 0; i < myArray.length; i++) {
var tempArray = [];
arangodb.query('somequery')
.then(
cursor => cursor.all()
).then(
keys => tempArray = keys,
err => console.error('Failed to execute query:', err)
).then(function() {
someArray.push.apply(someArray, tempArray);
});
}
我想在所有tempArrays
在someArray
收集进行其他操作。但是由于Node.js是异步的,我不知道该怎么做。你能帮助我吗?提前致谢。
的node.js不ASYNC, 'arangodb.query'是 –
可以'arangodb.query('somequery')'并行运行还是必须串联?另外,如果一个失败,继续处理或停止? –
他们可以并行运行,如果你参考我的答案Promise.all()会拒绝,如果即使有一个承诺失败 – marvel308