【每日知识】原型链相关介绍

原型继承:把 父元素 作为子对象构造函数的原型

Son.prototype = father

可选:原型继承之后,由于父元素覆盖原来 子对象构造函数原型,就会导致constructor消失

解决办法:手动添加。(对开发几乎没有影响,也可以不加)

Son.prototype.constructor = Son

1.原型链:每一个对象都有自己的原型,而原型也是对象,也会有自己的原型,以此类推形成链式结构。称之为原型链。(原型链的终点是null)

2.对象访问原型链规则:就近原则

对象先访问自己的,自己没有就找原型的,原型没有就找原型的原型,一直到原型链终点null。

如果还找不到,属性则获取undefined,方法则会报错 xxx is not function

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
JavaScript中的每个对象都有一个原型对象,它充当该对象的对象。原型对象本身也是一个对象,因此它也有自己的原型对象。这样就形成了一个原型链,其中包含了所有对象的原型对象,直到最顶层的原型对象为止。 原型对象可以包含属性和方法,这些属性和方法可以被继承到子对象中。子对象可以通过原型链访问到所有祖先对象的属性和方法,这样就实现了JavaScript中的继承。 JavaScript中的原型和原型链非常重要,因为它们是实现继承的关键。JavaScript中没有类的概念,而是通过原型和原型链来组织对象和实现继承。 具体来说,每个JavaScript对象都有一个__proto__属性,指向它的原型对象。当我们访问一个对象的属性时,JavaScript会先在该对象本身查找这个属性,如果没有找到,则会到它的__proto__指向的原型对象中查找,如果还没有找到,则会继续查找原型对象的__proto__指向的原型对象,以此类推,直到找到该属性或到达原型链的顶端。 JavaScript中的函数也是对象,它们的原型对象也可以包含属性和方法。当我们创建一个函数时,它会自动包含一个prototype属性,该属性指向一个空对象。我们可以向prototype对象中添加属性和方法,这些属性和方法将被该函数创建的所有对象继承。当我们创建一个对象时,它的__proto__属性会指向该函数的prototype对象。 总之,JavaScript中的原型和原型链是实现继承的重要工具,理解它们对于写出高效、优雅的JavaScript代码至关重要。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

谢豪杰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值