技术文摘
promise的函数有哪些
2025-01-10 14:52:59 小编
Promise的函数有哪些
在JavaScript异步编程中,Promise是一个极为重要的概念,它提供了一系列强大的函数来处理异步操作。了解这些函数,能极大提升我们处理异步任务的效率和代码的健壮性。
首先是 then() 函数。这是Promise最常用的函数之一,它用于处理Promise的成功状态。当Promise被成功解决(resolved)时,会执行 then() 回调函数中的代码。例如:
const promise = new Promise((resolve) => {
setTimeout(() => {
resolve('成功的结果');
}, 1000);
});
promise.then((result) => {
console.log(result);
});
上述代码中,promise 经过一秒后被成功解决,then() 函数接收 resolve 传递的结果并打印出来。
catch() 函数则用于处理Promise的失败状态。当Promise被拒绝(rejected)时,会执行 catch() 回调函数中的代码。比如:
const errorPromise = new Promise((_, reject) => {
setTimeout(() => {
reject(new Error('发生错误'));
}, 1500);
});
errorPromise.catch((error) => {
console.error(error);
});
这里 errorPromise 经过一秒半后被拒绝,catch() 捕获到错误并在控制台打印错误信息。
finally() 函数无论Promise的状态如何都会执行。它接收一个回调函数,不管Promise是成功还是失败都会执行该回调。例如:
const anyPromise = new Promise((resolve) => {
setTimeout(() => {
resolve('任意状态');
}, 2000);
});
anyPromise
.then((res) => console.log(res))
.catch((err) => console.error(err))
.finally(() => console.log('无论如何都会执行'));
这段代码中,finally() 里的内容在Promise解决后一定会执行。
除了实例方法,Promise还有一些静态方法。比如 Promise.all(),它接收一个Promise数组,只有当数组中的所有Promise都成功解决时,它返回的Promise才会成功,并且返回一个包含所有Promise结果的数组。Promise.race() 同样接收一个Promise数组,哪个Promise先完成(成功或失败),它返回的Promise就以哪个Promise的结果或错误来结束。
掌握Promise的这些函数,能让我们在异步编程中更加得心应手,编写出更高效、更可靠的代码。
- 你了解 DDD 的七大关键概念吗?
- 如何设计全局唯一的订单号,我们一同探讨
- 库存更新,如此轻松!
- 不同版本 Kafka Producer 分区策略探讨
- 商品准时送达,购物不再迷茫,速学转转履约时效新方法
- DDD 全方位详尽解析(图文完整汇总)
- 深入探寻:Tomcat 类加载机制之谜
- SpringBoot3.3 多端口监听的实现方法
- 中美企业发力 AI 眼镜赛道,AI+AR 前景广阔
- Next.js 国际化完整指南
- Nacos 强大的实现原理剖析
- 万字长文论三高系统建设的方法论与实践
- Vue3.5 源码剖析:useTemplateRef 的实现机制
- 16 个 JavaScript 单行代码助力开发水平提升
- Python 性能优化:十种提升代码性能之策