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

相关推荐
u***j3243 分钟前
JavaScript在Node.js中的进程管理
开发语言·javascript·node.js
用户479492835691512 分钟前
javascript新进展你关注了吗:TC39 东京会议带来五大新特性
javascript
沐知全栈开发1 小时前
前端控制器模式
开发语言
C***11501 小时前
对基因列表中批量的基因进行GO和KEGG注释
开发语言·数据库·golang
北极糊的狐1 小时前
父组件向子组件传参时,传递数组和对象类型的参数的方法
前端·javascript·vue.js
Percep_gan1 小时前
解决java.security.InvalidKeyException: Illegal key size
java·开发语言
一颗不甘坠落的流星2 小时前
【HTML】iframe 标签 allow 权限汇总(例如添加复制粘贴权限)
前端·javascript·html
forestsea2 小时前
现代 JavaScript 加密技术详解:Web Crypto API 与常见算法实践
前端·javascript·算法
CryptoPP2 小时前
使用 KLineChart 这个轻量级的前端图表库
服务器·开发语言·前端·windows·后端·golang
18你磊哥2 小时前
chromedriver.exe的使用和python基本处理
开发语言·python