实现一个简易版的new方法

158 阅读1分钟
function _new(constructor, ...args) {
  let obj = Object.create(constructor)          //新生成一个对象 链接到原型
  let result = constructor.apply(obj, args)    //绑定this并执行构造函数
  return result instanceof Object ? result : obj    //确保返回值为对象
}