实现一个new

2021-03-22  本文已影响0人  学不动了Zzz
const New = (fn, ...args) => {
    const obj = {}

    // 实例的__proto__属性指向构造函数的原型
    obj.__proto__ = fn.prototype

    // 用obj作为构造函数的this
    const result = fn.apply(obj, args)

    return typeof result === 'object' ? result : obj
}
上一篇 下一篇

猜你喜欢

热点阅读