1、继承
继承:让一个对象继承另外一个对象所有属性和方法
特点:子类继承父类,子类拥有父类的所有功能,子类可以进行扩展,并且扩展的东西不影响父类
/* 父类 */
function Parent(name){
this.parenta = name;
this.parentb = 20;
}
Parent.prototype.parentPc = '父级原型';
Parent.prototype.parentPd = function(){
console.log('Hello!');
}
/* 子类 */
function Child(name){
/* 私有属性继承 */
Parent.apply(this,arguments);//将父类的this指向子类Child的this,将参数以不定参形式传过来,要注意arguments是类数组,所以要用apply
}
Child.prototype = Parent.prototype;//注意:都是对象,赋值的是引用,儿子修改了父亲也会跟着改变。
var a = new Child('楠楠');
console.log(a);
2、克隆对象
原型扩展
/* Object.creat(obj) 克隆对象 */
Chlid.prototype = Object.creat(paretn.prototype);//将父亲的原型克隆,就不会指向一个内存地址
总结:
用到的函数为:
apply,Object.creat()