Promise 是 JavaScript 中處理非同步操作的常用方法。然而,控制 Promise 的解決順序可能具有挑戰性。
問題:
考慮以下連續讀取一系列檔案的程式碼:
這段程式碼使用遞歸來依序讀取檔案,但是工作起來可能很有挑戰性with.
避免使用Async/Await進行遞歸:
在現代 JavaScript 中,使用 async 函數和 wait 是更優雅的解決方案:
或者,使用迭代器:
非同步生成器提供了一種按順序讀取檔案的替代方法:
考慮一個簡單的循環:
如果您喜歡更簡單的方法,基本的for循環可以就夠了:
或者,利用 Promise Reduction:
使用 reduce的更緊湊的解決方案:
庫實用程式方法
某些承諾庫(例如Bluebird)提供為此目的量身定制的實用方法:
以上是如何依序解決 JavaScript Promise?的詳細內容。更多資訊請關注PHP中文網其他相關文章!