// 使用 async/await 的简单示例
// 定义一个异步函数,使用 async 关键字
async function fetchData() {
try {
// 模拟网络请求,使用 fetch API 获取数据
let response = await fetch('https://jsonplaceholder.typicode.com/posts/1');
// 确保响应成功
if (!response.ok) {
throw new Error('Network response was not ok');
}
// 解析 JSON 数据
let data = await response.json();
// 返回解析后的数据
return data;
} catch (error) {
// 捕获并处理错误
console.error('There was a problem with the fetch operation:', error);
}
}
// 调用异步函数并处理返回的数据
fetchData().then(data => {
if (data) {
console.log('Fetched data:', data);
}
});
async 关键字:async
用于定义一个异步函数。当调用这个函数时,它会返回一个 Promise
对象。如果函数返回的是一个普通值,那么这个值会被包装成一个 Promise.resolve(value)
。
await 关键字:await
用于等待一个 Promise
对象的完成(即 resolve
或 reject
)。它只能在 async
函数内部使用。await
会让代码暂停执行,直到 Promise
完成,并返回其结果。
try...catch:用于捕获可能发生的错误。如果 await
后面的 Promise
被拒绝(reject
),则会抛出异常,进入 catch
块进行处理。
fetch API:这是一个用于发起网络请求的现代 API,返回一个 Promise
,解析为 Response
对象。我们可以进一步调用 .json()
方法来解析响应体中的 JSON 数据。
错误处理:通过 try...catch
结构来确保即使在网络请求失败的情况下,程序也不会崩溃,并且可以记录或处理错误信息。
这个示例展示了如何使用 async
和 await
来简化异步代码的编写,使得代码更易读和维护。
上一篇:javascript基础
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站