async函数和返回Promise的函数都可以用来处理异步操作,但它们存在一些区别。
例如,以下是一个返回Promise的函数:
function fetchData() {
return new Promise(resolve => {
setTimeout(() => {
resolve('Data fetched');
}, 1000);
});
}
以下是同样的操作,但使用async函数:
async function fetchData() {
return new Promise(resolve => {
setTimeout(() => {
resolve('Data fetched');
}, 1000);
});
}
例如,以下是使用返回Promise的函数的代码:
fetchData().then(result => {
console.log(result);
});
以下是使用async函数的代码,并使用await关键字来等待它的结果:
async function logData() {
const result = await fetchData();
console.log(result);
}
logData();
因此,虽然async函数和返回Promise的函数都可以用来处理异步操作,但使用async函数可以使代码更易读、理解。