gpt4 book ai didi

javascript - 如何在每个循环完成后发送响应

转载 作者:太空宇宙 更新时间:2023-11-04 02:56:52 25 4
gpt4 key购买 nike

Response.json 应在 foreach 循环完成执行后执行

var todoarr = (req.body.data) ? req.body.data : undefined
todoarr.forEach(function(element) {
if(element.done == true) {
TodoService.removeTodo(element, function(success) {
});
}
});
res.json("success");

最佳答案

您可以尝试使用async.js http://caolan.github.io/async/ .

每个方法http://caolan.github.io/async/docs.html#each

或者您可以尝试使用Promise.all

例如:

let promiseArr = [];
todoarr.forEach(function(element) {
if(element.done == true) {
promiseArr.push(somePromiseMethod(element));
}
});
//now execute promise all
Promise.all(promiseArr)
.then((result) => res.send("success"))
.catch((err) => res.send(err));

更多信息请点击这里。 https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Promise/all

一些 promise 示例:

function somePromiseMethod(element) {
return new Promise((resolve,reject) => {
TodoService.removeTodo(element, function(success) {
resolve();
});
});
}

希望这有帮助。

关于javascript - 如何在每个循环完成后发送响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40864589/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com