使用 Javascript 获取在 for 循环中修改后的数组结果 || .forEach || 换进?
问题是 javascript 异步运行所有内容,因此我找不到这个看似简单的问题的解决方案。
例子:
action: function () {
modelsResult = [];
Model.forEach(function (model) {
doSomething(model, function (newModel) {
modelsResult.push(newModel);
});
response.send({
models: modelsResult
});
}
var doSomething = function (model, callback) {
model.id = model.id++;
callback(model);
}
response.send
将在 modelsResult 拥有 forEach 提供的所有模型之前执行。但是,如果我将其response.send
放在 forEach 中,那么同样会发生。