async函数是一种特殊的函数,它的返回值是一个Promise对象。它可以通过在函数内部使用await关键字来暂停函数的执行,等待Promise对象的状态发生改变后再继续执行。async函数使得异步代码像同步代码一样易于理解和编写。
async函数的语法很简单,只需要在函数前加上async
关键字即可:
async function myAsyncFunction() {
// some async code here
}
async函数的返回值是一个Promise对象。如果在函数中使用return语句返回一个值,那么Promise对象的状态会被自动设置为fulfilled,并且返回的值会作为Promise对象的值。如果在函数中抛出一个错误,那么Promise对象的状态会被自动设置为rejected,并且抛出的错误会作为Promise对象的reason。
async function myAsyncFunction() {
return 'Hello World';
}
myAsyncFunction().then(result => {
console.log(result); // 'Hello World'
});
await是async函数的关键字之一,用于暂停函数的执行,等待Promise对象的状态发生改变后再继续执行。await关键字只能在async函数中使用。
当await关键字后面跟着一个Promise对象时,它会暂停async函数的执行,直到Promise对象的状态发生改变后再继续执行。如果Promise对象的状态变为fulfilled,则await关键字的返回值为Promise对象的值。如果Promise对象的状态变为rejected,则会抛出一个错误。
async function myAsyncFunction() {
const result = await myPromiseFunction();
console.log(result);
}
上面的代码中,myAsyncFunction
函数使用await关键字暂停执行,等待myPromiseFunction
函数返回的Promise对象的状态发生改变后再继续执行。如果myPromiseFunction
函数返回的Promise对象的状态变为fulfilled,则result
变量的值为Promise对象的值。