📅  最后修改于: 2023-12-03 14:54:11.233000             🧑  作者: Mango
在 JavaScript 中,异步等待通常是指在执行异步操作时,程序会暂停等待异步操作的结果返回,再继续执行后续的代码。这样可以有效地处理耗时的操作,同时避免阻塞整个程序。
以下是几个常见的使用异步等待的场景:
在 JavaScript 中,异步等待通常通过以下方式实现:
下面分别以回调函数、Promise 和 async/await 三种方式来介绍异步等待的用例。
function fetchData(callback) {
setTimeout(function() {
callback('Data received');
}, 2000);
}
function processData(data) {
console.log(data);
// 这里可以继续处理数据
}
fetchData(function(result) {
processData(result);
});
function fetchData() {
return new Promise(function(resolve, reject) {
setTimeout(function() {
resolve('Data received');
}, 2000);
});
}
function processData(data) {
console.log(data);
// 这里可以继续处理数据
}
fetchData()
.then(function(result) {
processData(result);
})
.catch(function(error) {
console.error(error);
});
function fetchData() {
return new Promise(function(resolve, reject) {
setTimeout(function() {
resolve('Data received');
}, 2000);
});
}
async function processData() {
try {
const result = await fetchData();
console.log(result);
// 这里可以继续处理数据
} catch (error) {
console.error(error);
}
}
processData();
以上是几种常见的异步等待用例以及它们的实现方式。根据实际需求和代码风格,选择合适的方式来处理异步操作,可以使代码更加可读、可维护。