JS:怎么让多个进程回调得到的不同值,在方法中同时使用?

比如说有一个function A,里面用了exec这种开启进程的方法,exec会返回数据a。
然后有一个function B,里面也用了exec这种开启进程的方法,exec会返回数据b。

现在的问题是:
有一个function C,需要同时使用a、b的值,所以等function A和B执行完后,才能执行C。

那么,怎么做到A、B都执行完了再执行C?

提前谢谢大佬们!

阅读 1.7k
2 个回答

把function A和B分别包装成一个Promise,然后在C中使用Promise.all

如果你使用的语言是 Javascript

参考:MDN 示例
const promise1 = Promise.resolve(3);
const promise2 = 42;
const promise3 = new Promise((resolve, reject) => {
  setTimeout(resolve, 100, 'foo');
});

Promise.all([promise1, promise2, promise3]).then((values) => {
  console.log(values);
});
// expected output: Array [3, 42, "foo"]
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏