对JS中原型和原型链的一些认识

文章介绍了JavaScript中的原型概念,包括构造函数的prototype属性、对象的prototype显式属性以及实例对象的__proto__隐式属性。原型链是通过这些属性形成的查找机制,当查找对象的属性或方法时,会沿着原型链向上搜索,直到找到Object.prototype的null为止。
摘要由CSDN通过智能技术生成

一,原型

1,什么是原型?

每个构造函数都自带prototype属性指向其空对象,这个空对象就是原型。

每个对象都有一个prototype的显式属性,这个prototype指向一个原型对象(prototype),prototype对象身上存放的就是公有的属性和方法

实例化成员身上有个隐式属性__proto__指向prototype对象,可以通过这个对象获取属性和方法。

原型上有个constructor构造函数,指向对象的构造函数,对象的构造函数可以通过new实例化对象,实例化的对象可以通过constructor构造函数,

指向对象的构造函数,实例对象有个隐式属性__proto__指向原型

2,原型的语法

3,

二,原型链

1,什么是原型链?

实例对象和原型对象之间的链接,每一个对象都有原型,原型本身又是对象,原型又有原型,以此类推形成一个链式结构.称为原型链。

实例成员通过隐式属性__proto__向上查找的过程就是原型链,原型链是一种向上查找的机制。

2,如下图

当调用的对象里面没有这个方法时,会继续向上找,只到找到Object.prototype里面null为止。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值