什么是Promise.all(),它的用法是什么?promise.all
當前位置:點晴教程→知識管理交流
→『 技術(shù)文檔交流 』
![]() ![]() ? Promise.all() 是JavaScript中的一個靜態(tài)方法,用于等待多個Promise對象同時完成。? 基本概念和功能 Promise.all()方法接受一個Promise可迭代對象(如數(shù)組)作為輸入,并返回一個新的Promise。當所有輸入的Promise都成功兌現(xiàn)(fulfilled)時,返回的Promise也會兌現(xiàn),并返回一個包含所有兌現(xiàn)值的數(shù)組。如果任何一個Promise失敗(rejected),返回的Promise也會立即失敗,并帶有第一個失敗的reason。 參數(shù)和返回值 ?參數(shù)?:一個可迭代對象,通常是一個數(shù)組,包含多個Promise對象。 ?返回值?:一個Promise對象。如果所有輸入的Promise都成功兌現(xiàn),返回的Promise也會兌現(xiàn),并返回一個包含所有兌現(xiàn)值的數(shù)組;如果任何一個Promise失敗,返回的Promise也會立即失敗,并帶有第一個失敗的reason?12。 使用場景和示例代碼 假設有多個異步任務需要并行執(zhí)行,并且主程序需要等待所有任務完成后才能繼續(xù)執(zhí)行,可以使用Promise.all()。例如: javascriptCopy Code const forMatData = async() => { const params = { /* 接口請求參數(shù) */ }; // 調(diào)用接口并獲取數(shù)據(jù) const { data } = await postRequest(params); // 對返回值進行處理 const resultList = data.result.map((item) => { return new Promise<void>((resolve) => { // 處理返回值的方法 resolve(); }); }); Promise.all(resultList).then(() => { // 當resultList執(zhí)行結(jié)束后,再執(zhí)行下面的方法 layerPage.value = true; }); } 在這個例子中,resultList是一個包含多個Promise的數(shù)組。使用Promise.all(resultList)可以等待所有Promise完成后再執(zhí)行后續(xù)操作? ?該文章在 2025/6/27 17:44:55 編輯過 |
相關(guān)文章
正在查詢... |