js构造继承有什么优点
1、解决了原型链继承中子类实例共享父类引用属性的问题。使用父类结构器来增强子类实例,相当于将父类的实例属性复制到子类。
2、创建子类实例时,可向父类传递参数。
3、可实现多继承(call多父类对象)。
实例
function Cat(name) { Animal.call(this); this.name = name || 'Tom'; } var cat = new Cat(); console.log(cat.name); // Tom cat.sleep() // Tom正在睡觉! console.log(cat instanceof Animal); // false console.log(cat instanceof Cat); // true
1、实例不是父类的实例,只是子类的实例。2、能够继承父类的实例属性和方法,不能继承原型属性/方法。3、函数无法复用,每个子类都有父类实例函数的副本,影响性能。实例function Star(name,age){thi ...