ES6学习(9)js中的new实现

  1. 使用new去创建一个实例对象,这个实例对象的特点,有一个proto属性指向构造函数的原型对象。
  2. 调用构造函数这个方法,并改变this的指向。
  3. 返回这个对象。
function Animal(name, age) {
  this.name = name;
  this.age = age;
};
function myNew(fun,...rest) { 
  let newObj = { __proto__: fun.prototype }; 
  fun.apply(newObj, rest); 
  return newObj 
};
let dog = myNew(Animal,'dog',18);
let cat = new Animal('cat',18);

【信息由网络或者个人提供,如有涉及版权请联系COOY资源网邮箱处理】

© 版权声明
THE END
喜欢就支持一下吧
点赞7 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容