Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/453.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 计算多个异步回调的总和_Javascript_Asynchronous - Fatal编程技术网

Javascript 计算多个异步回调的总和

Javascript 计算多个异步回调的总和,javascript,asynchronous,Javascript,Asynchronous,我仍然在正确地学习Javascript,并在这里阅读了一些关于异步()的文章。 不幸的是,我仍然很难找到解决问题的办法。我正在以异步方式调用一个API,并希望从我收到的多个异步调用的响应中创建一个总和 假设我希望我的代码执行一个操作,如果我的“总和”值为40。异步调用“A”返回6,异步调用“B”返回8,依此类推,直到最终达到值40。 我的调用都是异步的,如何创建这样的和? 是否需要将每个异步结果写入数据库,并在下一个异步调用中向上提取该值? 有更好的解决办法吗 谢谢你的帮助 编辑:为了便于理解,

我仍然在正确地学习Javascript,并在这里阅读了一些关于异步()的文章。 不幸的是,我仍然很难找到解决问题的办法。我正在以异步方式调用一个API,并希望从我收到的多个异步调用的响应中创建一个总和

假设我希望我的代码执行一个操作,如果我的“总和”值为40。异步调用“A”返回6,异步调用“B”返回8,依此类推,直到最终达到值40。 我的调用都是异步的,如何创建这样的和? 是否需要将每个异步结果写入数据库,并在下一个异步调用中向上提取该值? 有更好的解决办法吗

谢谢你的帮助

编辑:为了便于理解,我将添加一些源代码:

Webhook.js

router.post('/', (req, res, next) => {
  if (middleware.active)
    middleware.handle(req.body) // <--- this gives me one result
  res.sendStatus(200)
});
router.post(“/”,(请求、恢复、下一步)=>{
if(middleware.active)

middleware.handle(req.body)/您可以使用
Promise.all([apiCallOne,apiCallTwo])。然后(value=>sum(values))

sum是一个对数字数组求和的函数

您可以在do/while循环中等待这两个函数,然后执行其余的逻辑

async function myFunc() {
   let valA = 0;
   let valB = 0;
   do {
      valA += await fetch('https://api.url.com/a');
      valB += await fetch('https://api.url.com/b');
   } while((valA + valB) < 40 );
异步函数myFunc(){ 设valA=0; 设valB=0; 做{ valA+=等待取数('https://api.url.com/a'); valB+=等待取数('https://api.url.com/b'); }而((valA+valB)<40);

如果您希望一次只从一个循环中请求值,则还可以在其do/while循环中执行每个循环,然后检查条件。

请向我们显示您的代码。您必须使用异步等待和承诺状态“已完成”。但是,请在此处添加您的代码,以提供正确的建议。这里需要的是数据库或其他形式的帖子之间的持久性。有什么建议吗?最好的解决方案是什么?我没有存储太多数据。只是一些简单的求和。