首先我们创建一个父类:
// 创建一个父类构造函数
function Parent () {
this.parentProperty = '父类属性';
}
// 为父类添加一个原型方法
Parent.prototype.getParentProperty = function () {
return this.parentProperty;
}
此时的原型链是这样的:
接下来创建一个子类,使子类继承父类(即子类的原型为父类的实例):
// 创建一个子类构造函数
function Children () {
this.childrenProperty = '子类属性';
}
// 继承Parent
Children.prototype = new Parent();
此时的原型链是这样的:
重写超类型中的方法:
// 重写超类中的方法
Children.prototype.getParentProperty = function () {
return '这是重写的父类方法';
}
// 创建自己的方法
Children.prototype.getChildrenProperty = function () {
return '这是自己的方法';
}
原型链:
创建实例
var instance = new Children();
instance.getParentProperty(); // 返回:"这是重写的父类方法"
原型链: