ES6下关于对象继承的新方法

最近在看ES6,看到了对象上添加了不少新的方法,其中有一个assign()方法是用来给对象添加属性和值,于是想到了对象继承,下面上代码
  function Animal(){
    this.type="猫科动物";
}
function Cat(name,color){
	this.name=name;
	this.color=color;
}
Cat.prototype.size="big";
Object.assign(Cat.prototype,new Animal());//推荐用这种方法进行继承,既不会覆盖原型对象,也不会改变构造器指向
// Cat.prototype=new Animal();//改变了构造器指向,同时覆盖了原型对象
let cat1=new Cat("cat1","red")
console.log(cat1.size+cat1.type);
console.log(cat1.constructor);

利用assgin()方法不会对原型对象进行覆盖,也就不会更改构造器的指向

如果对各位有帮助请点个赞,有不足的地方也请指正


猜你喜欢

转载自blog.csdn.net/qq8241994/article/details/79609799
今日推荐