前言先看一段代码let p1 = Promise.resolve(); // 1. p1 的状态为 fulfilled let p2 = p1.then(() => { console.log(0); let p3 = Promise.resolve(4); return p3; }); // 2. 因为 p1 的状态已经是 fulfilled,所以调用 then 后立即将 onFulfilled 放入 microtask 队列 // 此时 microtask 只有p1的 onFulfilled: [p1.onFulfilled] let p4 = p2.then((res) => { console.log(res); }); // 3. p2的状态还是 pending,所以调用 then 后是为 p2 收集依赖, // 此时 p2 的 reactions 如下 /*{ onFulfilled: (res) => {console.log(res)}, onRejected: undefined }*/ let p5 = Pr
Harexs
风归云动,天河泻梦