// 使用 Promise 实现异步编程
// 创建一个返回 Promise 的函数,模拟网络请求
function fetchData(url) {
return new Promise((resolve, reject) => {
// 模拟网络延迟
setTimeout(() => {
if (url === 'success') {
resolve('数据获取成功');
} else {
reject('数据获取失败');
}
}, 1000);
});
}
// 使用 then 和 catch 处理 Promise
fetchData('success')
.then(response => {
console.log(response); // 输出: 数据获取成功
})
.catch(error => {
console.error(error); // 如果有错误会输出错误信息
});
// 使用 async/await 处理异步代码
async function fetchAndLogData() {
try {
const response = await fetchData('success');
console.log(response); // 输出: 数据获取成功
} catch (error) {
console.error(error); // 如果有错误会输出错误信息
}
}
fetchAndLogData();
Promise:
fetchData 函数返回一个 Promise 对象,模拟了一个网络请求。resolve 表示请求成功时的回调,reject 表示请求失败时的回调。.then() 方法处理成功的响应,使用 .catch() 方法处理失败的情况。async/await:
async 关键字用于定义一个异步函数,该函数内部可以使用 await 关键字等待一个 Promise 完成。await 关键字会使异步函数暂停执行,直到 Promise 被解决或拒绝。try...catch 语句来捕获可能发生的错误。上一篇:js 异步执行
下一篇:js __proto__
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站