在JavaScript中,await
用于暂停异步函数执行,等待Promise
对象的解决。当Promise
对象解决时,await
将返回被解决的值,否则它将抛出一个被拒绝的Promise
错误。
下面是一些使用await
的例子:
- 使用
await
等待一个Promise对象
async function getData() {
const response = await fetch('https://jsonplaceholder.typicode.com/todos/1');
const data = await response.json();
console.log(data);
}
- 使用
await
等待Promise.all解决所有Promise对象
async function getAllData() {
const [ userData, postdata, commentsData ] = await Promise.all([
fetch('https://jsonplaceholder.typicode.com/users'),
fetch('https://jsonplaceholder.typicode.com/posts'),
fetch('https://jsonplaceholder.typicode.com/comments')
]);
const users = await userData.json();
const posts = await postdata.json();
const comments = await commentsData.json();
console.log(users, posts, comments);
}
在这个例子中,Promise.all
将等待所有Promise
对象都解决后,再返回结果。使用await
来解决每个Promise
对象返回的JSON
数据,最后打印结果。
需要注意的是,在使用await
时需要在一个异步函数中使用,否则会报错。