1. Promise 构造函数: Promise (excutor) {}
- executor 函数: 执行器 (resolve, reject) => {}
- resolve 函数: 内部定义成功时我们调用的函数 value => {}
- reject 函数: 内部定义失败时我们调用的函数 reason => {}
- executor 会在 Promise 内部立即同步调用,异步操作在执行器中执行,换话说Promise支持同步也支持异步操作
2. Promise.prototype.then 方法: (onResolved, onRejected) => {}
- onResolved 函数: 成功的回调函数 (value) => {}
- onRejected 函数: 失败的回调函数 (reason) => {}
- 指定用于得到成功 value 的成功回调和用于得到失败 reason 的失败回调 返回一个新的 promise 对象
3. Promise.prototype.catch 方法: (onRejected) => {}
- onRejected 函数: 失败的回调函数 (reason) => {}
- then()的语法糖, 相当于: then(undefined, onRejected)
- 异常穿透使用:当运行到最后,没被处理的所有异常错误都会进入这个方法的回调函数中
4. Promise.resolve 方法: (value) => {}
- value: 成功的数据或 promise 对象
- 返回一个成功/失败的 promise 对象,直接改变promise状态
5. Promise.reject 方法: (reason) => {}
- reason: 失败的原因
- 返回一个失败的 promise 对象,直接改变promise状态
6. Promise.all 方法: (promises) => {}
- promises: 包含 n 个 promise 的数组
- 返回一个新的 promise, 只有所有的 promise 都成功才成功, 只要有一个失败了就直接失败
- 成功时返回所有的 promise 返回值组成一个数组,失败时返回第一个失败的 promise 的返回值
7. Promise.race 方法: (promises) => {}
- promises: 包含 n 个 promise 的数组
- 返回一个新的 promise,
第一个完成的 promise 的结果状态就是最终的结果状态

本文详细介绍了Promise构造函数、then方法、catch方法、resolve和reject方法的使用,以及Promise.all和Promise.race方法的实现原理。Promise是JavaScript中处理异步操作的重要工具,它支持同步和异步操作,并能有效地解决回调地狱问题。通过then和catch,我们可以优雅地处理成功和失败的回调,而Promise.all和Promise.race则提供了处理多个Promise并行执行的解决方案。
:常用 API&spm=1001.2101.3001.5002&articleId=124270666&d=1&t=3&u=db2819ff107345e1a8d9dc88238fd096)
3317

被折叠的 条评论
为什么被折叠?



