ES6中的await关键字可以用于等待一个Promise对象的完成, 并返回其解决的值或拒绝的原因。这个关键字通常在async函数中使 用,因为await只能在async函数内部使用。
以下是await的一些用法,并对其进行详细讲解:
- 等待一个Promise对象的完成
async function fetchData() { const response = await fetch(' const data = await (); return data; }
在上面的示例中,我们使用fetch函数来获取一个API的响应。 fetch函数返回一个Promise对象,我们使用await关键字等待它的 完成。一旦Promise对象完成,await表达式就会返回解决的值,这 里是响应对象。我们可以继续使用await来等待解析响应对象的JSON 数据。 - 处理Promise的拒绝
async function fetchData() { try { const response = await fetch(' const data = await (); return data; } catch (error) { ('Error:', error); } }
在上面的示例中,我们使用try...catch语句来处理await表 达式中可能发生的拒绝情况。如果Promise对象被拒绝,控制流就会 跳转到catch块内部,并执行相应的错误处理逻辑。 - 并行等待多个Promise对象的完成
async function fetchMultipleData() { const [data1, data2, data3] = await ([ fetchData(' fetchData(' fetchData(' ]); return [data1, data2, data3]; }