美文网首页
new 实现

new 实现

作者: 行走的蛋白质 | 来源:发表于2020-09-23 11:37 被阅读0次
  • new运算符都做了哪些操作呢?
    • 1、创建了一个新对象(是Object类型的数据)
    • 2、将this指向新对象
    • 3、执行构造函数,给对象添加属性和方法 (将创建的对象的原型指向构造函数的原型)
    • 4、返回一个对象(如果构造函数本身有返回值且是对象类型,就返回本身的返回值,如果没有才返回新对象)
function _new(fn, ...args) {
    const newO = Object.create(fn.prototype)
    const result = fn.apply(newO, args)
    return result instanceof Object ? result : newO
}

相关文章

网友评论

      本文标题:new 实现

      本文链接:https://www.haomeiwen.com/subject/kynnyktx.html