以下是我的代码 -
exports.saveWeekAvailability = function(req, res){
console.log("-- SAVE WEEK WISE DATA --");
weekData = req.body;
var resultArr = [];
for(var i=0; i< weekData.length; i++){
Availability(weekData[i]).save(function(err, result){
console.log("------------------------------------------");
console.log(result);
resultArr.push(result);
});
}
console.log("-- Result Arr --");
console.log(resultArr);
};
但每次resultArr
都是一个空数组。让我知道我在这里做错了什么。
答案 0 :(得分:1)
这是重复的。如果您想了解正在发生的事情,请检查您的答案中的重复帖子的评论,其中包含非常好的答案。
快速解决您的问题:
for(var i=0; i< weekData.length; i++){
(function(j) {
Availability(weekData[i]).save(function(err, result){
console.log("------------------------------------------");
console.log(result);
resultArr.push(result);
if ( j == weekData.length - 1 ) {
console.log("-- Result Arr --");
console.log(resultArr);
}
});
}(i));
}