Global

Members

(constant) PENDING

Source:
Promise手写(https://www.jianshu.com/p/89f6409a7936) 创建三变量记录表示状态 用that保存this,避免后期闭包导致this的指向不对 value 变量用于保存 resolve 或者 reject 中传入的值 resolvedCallbacks 和 rejectedCallbacks 用于保存 then 中的回调, 因为当执行完 Promise 时状态可能还是等待中,这时候应该把 then 中的回调保存起来用于状态改变时使用

Methods

objectFactory()

Source:
New手写 用new Object() 的方式新建了一个对象 obj 取出第一个参数,就是我们要传入的构造函数。此外因为 shift 会修改原数组,所以 arguments 会被去除第一个参数 将 obj 的原型指向构造函数,这样 obj 就可以访问到构造函数原型中的属性 使用 apply,改变构造函数 this 的指向到新建的对象,这样 obj 就可以访问到构造函数中的属性 返回 obj 考虑构造函数又返回值的情况: 如果构造函数返回一个对象,那么我们也返回这个对象 如上否则,就返回默认值