在 jQuery 的 each
函數中處理異步回調時,可以使用 Promise.all
來確保所有異步操作完成后再執行后續代碼。下面是一個示例:
// 假設我們有一個包含異步操作的數組
const asyncOperations = [
() => $.ajax({ url: 'someUrl1', dataType: 'json' }),
() => $.ajax({ url: 'someUrl2', dataType: 'json' }),
// ...
];
// 使用 Promise.all 來處理所有異步操作
Promise.all(asyncOperations.map(operation => operation()))
.then(results => {
console.log('所有異步操作已完成');
console.log('結果1:', results[0]);
console.log('結果2:', results[1]);
// ...
})
.catch(error => {
console.error('發生錯誤:', error);
});
在這個示例中,我們首先創建了一個包含異步操作的數組 asyncOperations
。然后,我們使用 Promise.all
和 map
函數來處理數組中的每個異步操作。Promise.all
會等待所有異步操作完成,然后返回一個包含所有結果的數組。最后,我們使用 then
和 catch
處理成功和失敗的情況。