[英]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.