原型和原型链

原型是每个构造函数的prototype属性,保存实例的共享方法。每个对象有__proto__指向构造函数的原型。原型链由对象的__proto__连接,直到Object.prototype的原型为null。当访问属性或方法时,会从当前对象逐级向上搜索,直至找到或返回undefined。
摘要由CSDN通过智能技术生成

 原型的概念

1.每一个构造函数(普通函数也有原型)都有一个原型对象,也叫prototype(原型属性),他保存了构造函数创建的一类实例的共有的方法

2.每一个对象都有一个__proto__属性,这个属性(在对象被创建的时候自动) 指向了 自己构造函数的原型

什么是原型链

每一个对象 都有一个 属性 __proto__ 属性,这个属性叫原型对象(arr1.__proto__) -》构造函数的.prototype,

原型也是一个对象,所以他也有自己的原型, arr.__proto__.__proto__,

以此类推,直到Object.prototype 的原型为止,因为 Object的原型的原型为null

 绿色的线表示原型链,当zs实例调用一个属性或者方法时,现在自身找,然后一层一层的向上,直至找到null.没有则返回undefined

图中的Objct,是构造方法

 作用

我们使用一个对象的属性或者方法的时候,会先在自身内存中找,找不到就去自己原型中找,

原型也是一个原型,如果找不到就去原型的原型中。直到直到Object.prototype  为止

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值