【发布时间】:2018-04-16 09:36:46
【问题描述】:
在 node.js 中处理循环的更好方法是什么?例如,在下面的代码中,我将值插入到新数组中。但是我返回 Promise 的方式似乎是处理循环的不正确方式,那么他们有更好的选择吗?
let userProfileScore = [];
return new Promise(function (resolve, reject) {
for (let i = 0; i < userArr.length; i++) {
user.userProfile(userArr[i], (err, score) => {
if (err) throw err;
userProfileScore.push({
userID: userArr[i],
value: sco
});
if (i == userArr.length - 1) { // Here I am checking the key and then resolving the promise .
resolve(userProfileScore);
}
});
}
});
【问题讨论】:
-
我会通过循环创建一组承诺,然后直接运行 Promise.all(promises)。其中 promises 是 promise 数组
标签: node.js for-loop ecmascript-6 es6-promise