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)。

相关推荐
心中有你02142 分钟前
Python Tkinter 情侣恋爱日记桌面小程序(本地文件存储,无数据库)
开发语言·python
疯狂打码的少年34 分钟前
【计算机网络】OSI/RM七层模型(层次结构、各层功能速览)
开发语言·笔记·计算机网络·php
小灰灰搞电子35 分钟前
Rust+Slint 实现ModbusRTU从机调试助手源码分享
开发语言·rust·modbusrtu
程序喵大人36 分钟前
【C++入门】值类别与表达式 - 03 引用绑定:为什么有些参数能接住临时对象
开发语言·c++·引用绑定
子非鱼a1 小时前
【WEB】[RoarCTF 2019]Easy Java
java·开发语言
软件黑马王子1 小时前
19.资源加载模块:主要作用和基本原理
开发语言·前端框架·c#
Hilaku1 小时前
为什么技术极强的前端,往往当不好前端 Team Leader?
前端·javascript·程序员
fengkai45451 小时前
七、华为云网络类 + 计算类云服务实验总结
开发语言·php
神明不懂浪漫1 小时前
【第四章】索引——B+树、回表,加快数据库的查找能力的利器
开发语言·数据结构·数据库·经验分享·笔记·b树
博、、1 小时前
全民健身解决方案系统源码实战指南:从架构设计到部署全流程解析
开发语言·需求分析