鱼C论坛

 找回密码
 立即注册
查看: 1877|回复: 0

关于JS原型链继承

[复制链接]
发表于 2022-10-3 10:57:55 | 显示全部楼层 |阅读模式
60鱼币
关于JS的原型链继承,我看网上的写法都是按照写法一(见如下代码)写的,先更改子类的原型对象为父类的实例化对象,然后再修改父类的constructor属性。
但为什么不能直接按照写法二写呢?直接修改子类的原型对象的隐式原型属性为父类的实例化对象,不是直接就解决了吗?
function Supper(){
  this.supProp = 'Supper property';
}
Supper.prototype.showSupperProp = function(){
  console.log(this.supProp);
}

function Sub(){
  this.subProp = 'Sub property';
}
Sub.prototype.showSubProp = function(){
  console.log(this.subProp);
}
// 写法一(网上的写法)
Sub.prototype = new Supper()
Sub.prototype.constructor = Sub
// 写法二(我认为的写法)
// Sub.prototype.__proto__ = new Supper()

var sub = new Sub();
sub.showSupperProp();

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-22 13:42

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表