[英]Main function calls the other functions one after the other
正如标题所示,我想构建一个 function 一个接一个地调用其他函数。 不幸的是,这些功能需要不同的时间长度,并且在执行时会出现问题,这是可以理解的。
这个问题有简单的解决方案吗?
function allInOne() {
loadData();
moveSheet();
sortStockData();
}
在第一个 function 完成之前,第二个已经完成。 但这一切都应该一个接一个地完成。 我刚刚被谷歌等困住了。
先感谢您。
正常的 Javascript 是单线程的,因此当您调用一个 function 然后另一个又一个(如您所做的那样)时,您可以期望它们按顺序运行。
但是你可能会发现 loadData() 是一个异步的 function,返回一个Promise
。 查看它的return
语句来检查这一点。
如果它返回 promise,你可以说,
loadData().then(result => moveSheet())
如果moveSheet
也是,返回一个 promise,你可以展开链如下:
loadData().then(result => moveSheet()).then(result => sortStockData())
async function x(){
await loadData();
await moveSheet();
sortStockData();
}
更多关于 Promises 的信息在这里。
https://medium.com/javascript-scene/master-the-javascript-interview-what-is-a-promise-27fc71e77261
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.