原型链继承
-
套路
1.定义父类型构造函数
2.给父类型的原型添加方法
3.定义子类型的构造方法
4.创建父类型的对象赋值给子类型的原型
5.将子类型原型的构造属性设置为子类型
6.给子类型原型添加方法
7.创建子类型的对象:可以调用父类型的方法 -
关键:
子类型的原型为父类型的一个实例对象
举个栗子- 。-~~
以下的栗子每一步都按照套路的步骤进行哈
//父类型
function Father(){
this.fhb="fhobby"
}
Father.prototype.showfb = function(){
console.log(this.fhb);
}
//子类型
function Sun(){
this.shb="---shobby";
}
//子类型的原型为父类型的一个实例对象
Sun.prototype = new Father();
//修改constructor指向,
//让子类型原型的constructor指向子类型
Sun.prototype.constructor = Sun;
Sun.prototype.showsb = function(){
console.log(this.shb);
}
var sun = new Sun();
sun.showfb();
//小错误:当前的constructor 指向的是 father,
//通过修改为sun(24行)
console.log(sun.constructor);//输入sun
可以参照这个栗子画图就能更加深入理解原型链啦