要避免回調地獄,您可以使用以下幾種方法:
function asyncOperation1() {
return new Promise((resolve, reject) => {
// 異步操作
resolve(result);
});
}
function asyncOperation2() {
return new Promise((resolve, reject) => {
// 異步操作
resolve(result);
});
}
asyncOperation1()
.then(result1 => {
console.log('Result 1:', result1);
return asyncOperation2();
})
.then(result2 => {
console.log('Result 2:', result2);
})
.catch(error => {
console.error('Error:', error);
});
async
關鍵字,并在調用異步函數時使用 await
關鍵字,可以使代碼更加簡潔。例如:async function main() {
try {
const result1 = await asyncOperation1();
console.log('Result 1:', result1);
const result2 = await asyncOperation2();
console.log('Result 2:', result2);
} catch (error) {
console.error('Error:', error);
}
}
main();
element.addEventListener('click', () => {
// 處理點擊事件
});
總之,選擇合適的方法來避免回調地獄取決于您的具體需求和項目規模。在許多情況下,使用 Promise 和 async/await 可以有效地簡化異步代碼的編寫和管理。