JavaScript使用原型链实现继承

首先要实现这种继承方法,建议先去了解一下何为原型链可以看一下我之前发的文章https://blog.csdn.net/qq_34162705/article/details/125340684?spm=1001.2014.3001.5501

用JavaScript的原型链可以实现类型之间的继承

核心思想:

可以概括为:子类型的原型为父类型的一个对象实例 。

这样的说法可能比较绕人,比较不好理解

图示分析:

 

 也就是把父类型的对象赋给子类型的原型,将子类型原型的构造属性设置为子类型,然后在父类型的原型中添加属性和方法,这样子类型的原型就可以使用父类型的原型的属性和方法。可以在子类型的原型中添加属性和方法,或者是重写属性和方法。

具体例子:

// 定义父类型构造函数
function SupperType() {
    this.supProp = 'Supper property';
}

// 给父类型的原型添加方法
SupperType.prototype.showSupperProp = function () {
    console.log(this.supProp);
};

// 定义子类型的构造函数
function SubType() {
    this.subProp = 'Sub property';
}

// 创建父类型的对象赋值给子类型的原型
SubType.prototype = new SupperType();

// 将子类型原型的构造属性设置为子类型
SubType.prototype.constructor = SubType;

// 给子类型原型添加方法
SubType.prototype.showSubProp = function () {
    console.log(this.subProp)
};

// 创建子类型的对象: 可以调用父类型的方法
var subType = new SubType();
subType.showSupperProp();  //此处使用父类原型中的方法
subType.showSubProp();  //此处为子类原型中的方法

以上仅是个人理解,欢迎斧正

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值