JavaScript完整原型链

在 JavaScript 中,每个函数都有一个prototype属性,这个属性是一个对象。当通过一个构造函数创建一个新的对象时,这个新对象会自动拥有一个内部属性[[Prototype]](在一些浏览器中可以通过__proto__访问,不过这是一个非标准的访问方式),它指向构造函数的prototype对象。

例如,有一个构造函数function Person(name) { this.name = name; },当我们创建一个Person的实例let person = new Person('John');,person对象的[[Prototype]](proto)就指向Person.prototype。

当我们访问一个对象的属性时,JavaScript 首先会在对象自身的属性中查找。如果没有找到,它会沿着对象的[[Prototype]](proto)所指向的对象(即构造函数的prototype)继续查找。这个查找过程会一直沿着[[Prototype]]链向上进行,直到找到目标属性或者到达Object.prototype(因为所有对象的原型链最终都会指向Object.prototype)。

相关推荐
2501_94442412几秒前
Flutter for OpenHarmony游戏集合App实战之消消乐下落填充
android·开发语言·flutter·游戏·harmonyos
Filotimo_1 分钟前
JWT的概念
java·开发语言·python
黎雁·泠崖4 分钟前
Java字符串系列总结篇|核心知识点速记手册
java·开发语言
彩妙不是菜喵27 分钟前
STL精讲:string类
开发语言·c++
研☆香28 分钟前
简单的复选框 全选 反选功能
javascript
林间风雨29 分钟前
layui 2.9.16 版本,根据字段字数最大数,表格自适应字段宽度
前端·javascript·layui
小屁猪qAq30 分钟前
创建型之单例模式
开发语言·c++·单例模式
郝学胜-神的一滴34 分钟前
深入解析以太网帧与ARP协议:网络通信的基石
服务器·开发语言·网络·程序人生
hzb6666637 分钟前
xd_day47文件上传-day55xss
javascript·学习·安全·web安全·php