1.Promise构造函数:Promise(excutor) {}
-
excutor 函数: 执行器 (resolve, reject) => {}
-
resolve 函数: 内部定义成功时调用的函数 value => {}
-
reject 函数: 内部定义失败时调用的函数 reason => {}
-
excutor 函数会在 Promise 内部立即同步调用,异步操作(resolve 函数,reject 函数)在执行器中执行
const p = new Promise((resolve, reject) => {
// 同步调用
console.log(1);
});
console.log(2);
// 1
// 2
2. then ---- 实例对象的方法
-
then 方法: (onResolved, onRejected) => {}
-
onResolved 函数: 成功的回调函数 value => {}
-
onRejected 函数: 失败的回调函数 reason => {}
-
Promise 对象异步操作成功或者失败的回调函数,返回一个新的 Promise 对象
-
then()方法是一个异步执行,需要等同步执行完以后才会执行
3.catch --- 实例对象的方法
-
catch 方法: (onRejected) => {}
-
onRejected 函数: 失败的回调函数 reason => {}
-
只能用于异步操作失败的回调函数,返回一个新的 Promise 对象
const p = new Promise((resolve, reject) => {});
// 就是 then 里面只放成功的回调函数,失败的回调函数放在 catch 里面做一个区分
p.then((value) => {}).catch((reason) => {});