async是JavaScript中的关键字,用于表示函数是异步的。
当函数被标记为async时,该函数会自动返回一个Promise对象,这个Promise对象的状态可能为resolved或rejected,具体取决于函数内部的操作和返回值。
使用async关键字时,函数内部可以使用await关键字来等待一个异步操作的完成,await会阻塞函数执行,直到异步操作完成并返回结果。这样,我们就可以在函数内部编写异步代码,但不必使用回调函数或者Promise的then/catch方法。
例如:
async function fetchData() {
const response = await fetch('https://jsonplaceholder.typicode.com/todos/1');
const data = await response.json();
console.log(data);
}
fetchData();
上述代码使用异步请求获取JSON数据,并在控制台打印数据。其中,fetch和response.json()都是异步操作,使用await关键字可以等待请求完成并获取结果。