【发布时间】:2018-08-24 15:40:44
【问题描述】:
我在 node.js 中有以下循环
for (var i in details) {
if (!details[i].AmntRcvd > 0) {
res.sendStatus(400);
return;
}
totalReceived += details[i].AmntRcvd;
UpdateDetail(details[i].PONbr, details[i].LineID).then((results) => {
console.log(results);
details[i].QtyOrd = results.QtyOrd;
details[i].QtyRcvd = results.QtyRcvd;
details[i].QtyPnding = results.QtyPnding;
details[i].UnitCost = results.UnitCost;
}).catch((error) => {
console.log(error);
});
}
UpdateDetail 函数返回一个承诺。在继续循环的下一次迭代之前,我如何等待承诺解决/拒绝。
【问题讨论】:
-
仅供参考:不推荐使用
for..in(尤其是在阵列上)。将for..of用于数组,将for..of与Object.keys()、Object.values()或Object.entries()一起用于对象。
标签: javascript node.js