// 使用 Promise 实现异步方法
function asyncFunction() {
return new Promise((resolve, reject) => {
// 模拟一个异步操作,比如网络请求或文件读取
setTimeout(() => {
const success = true; // 假设操作成功
if (success) {
resolve("操作成功");
} else {
reject("操作失败");
}
}, 1000);
});
}
// 调用异步方法并处理结果
asyncFunction()
.then(result => {
console.log(result); // 输出: 操作成功
})
.catch(error => {
console.error(error); // 如果失败会输出: 操作失败
});
// 使用 async/await 语法糖来简化异步代码
async function handleAsync() {
try {
const result = await asyncFunction();
console.log(result); // 输出: 操作成功
} catch (error) {
console.error(error); // 如果失败会输出: 操作失败
}
}
handleAsync();
Promise:
asyncFunction 返回一个 Promise 对象。setTimeout 模拟了一个耗时的异步操作(例如网络请求)。resolve 方法传递成功信息;如果失败,调用 reject 方法传递错误信息。Promise 链式调用:
.then() 处理成功的结果,使用 .catch() 处理失败的情况。async/await:
async 关键字用于定义一个函数,该函数内部可以使用 await 关键字等待一个 Promise 完成。await 可以暂停函数执行,直到 Promise 完成,从而让异步代码看起来像同步代码,更加简洁易读。try...catch 用于捕获 await 的错误。上一篇:js 异步请求
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站