Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/392.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_Async Await - Fatal编程技术网

Javascript中的异步函数

Javascript中的异步函数,javascript,asynchronous,async-await,Javascript,Asynchronous,Async Await,我在异步函数中有下面的函数 await saveStock(stock).then((res) => { addDrugToStock(stockDrug) addSupplierToStock(stockSupplier) }); 当我运行这个函数时,saveStock函数总是给出适当的结果。但是其他两个函数没有正确执行。有时addDrugToStock正在工作。在其他时间adSupplierToStock正在工作。如何同时运行addDrugeToStock和addSuppli

我在异步函数中有下面的函数

await saveStock(stock).then((res) => {
 addDrugToStock(stockDrug)
  addSupplierToStock(stockSupplier)

});

当我运行这个函数时,saveStock函数总是给出适当的结果。但是其他两个函数没有正确执行。有时
addDrugToStock
正在工作。在其他时间
adSupplierToStock
正在工作。如何同时运行
addDrugeToStock
addSupplierToStock

如果要执行两个承诺对象并等待它们,则需要使用Promise.all:

如果要执行两个承诺对象并等待它们,然后您需要使用Promise.all:

当使用/operators时,您不必实现
。然后()
。catch()
处理程序,只需以同步方式编写代码即可。否则,您可以使用来处理多个独立的承诺

try {
   // Equal to .then() in regular Promises

   const response = await saveStock(stock);

   addDrugToStock(stockDrug);
   addSupplierToStock(stockSupplier);
} catch (e) {
   // Equal to .catch() in regular Promises
}
使用/运算符时,不必实现
.then()
.catch()
处理程序,只需以同步方式编写代码即可。否则,您可以使用来处理多个独立的承诺

try {
   // Equal to .then() in regular Promises

   const response = await saveStock(stock);

   addDrugToStock(stockDrug);
   addSupplierToStock(stockSupplier);
} catch (e) {
   // Equal to .catch() in regular Promises
}

我如何**运行**两者。。。同时
。您不能运行,但可以同时获得值使用PROMITE.all进行并行函数调用
我如何**运行**两者。。。同时
。您不能运行,但可以同时获取值使用Promise.all进行并行函数调用