博客
关于我
JavaScript学习手册(53)
阅读量:472 次
发布时间:2019-03-06

本文共 576 字,大约阅读时间需要 1 分钟。

原型链与对象属性查找原型链中的属性问题

当我们访问一个对象的属性时,JavaScript引擎会按照以下规则进行查找:"原型链"是一条连接对象与其构造函数的链状结构。当我们访问一个对象的属性时,引擎会首先在对象本身查找属性。如果不存在,则会沿着原型链逐一查找,直到找到属性或达到最高层的Object原型。最终,如果未找到相应属性,则返回undefined。

原型链的作用

原型链是对象属性查找的重要机制,它决定了对象在继承属性时的行为。原型链不仅包含构造函数的原型,还包括所有从构造函数到Object的中间原型。例如:

  • 构造函数的原型通常存储静态方法。
  • 实体对象的原型通常存储公共方法或属性。
  • Object的原型提供核心对象的属性(如toString、valueOf等)。

原型链属性查找的规则

  • 读取属性时:引擎会自动查询当前对象的原型链,直到找到相应属性或确定属性不存在。
  • 设置属性时:如果当前对象没有该属性,则直接在对象本身创建新的属性,不会 bleed 到原型链。
  • 方法定义的位置:方法应定义在构造函数的原型中,以确保所有实例对象共享相同方法。
  • 属性定义的位置:属性应通过构造函数的附加行为或直接在实例对象中定义,以避免污染全局原型链。

每日一句人生路上有阻挡你梦想的砖墙,那是有原因的。这些砖墙是为了让我们明白,我们需要拥有它们,多么努力去实现。

转载地址:http://bkvdz.baihongyu.com/

你可能感兴趣的文章
AttributeError: module ‘torch‘ has no attribute ‘gesv‘
查看>>
spring 的@ComponentScan 理解
查看>>
.gitignore不起作用解决方法
查看>>
C++ e 神秘数组——vector
查看>>
day04_CSS选择器
查看>>
js 获取时间戳的方法
查看>>
C++ 底层语言的信仰-指针分类
查看>>
DFS
查看>>
2021年 第12届 蓝桥杯 第3次模拟赛真题 三C【Java版】
查看>>
Vuex使用详解
查看>>
android开发之记住密码
查看>>
[java][工具类][Arrays]
查看>>
Eclipse中io操作提示找不到文件
查看>>
爬取某瓣电影中你好,李焕英电影的短评并生成词云
查看>>
概念模型向逻辑模型的转换
查看>>
An internal error occurred while showing an internal error.
查看>>
vue 禁止遮罩滑动及事件修饰符
查看>>
Java中多重循环的退出
查看>>
python基础语法
查看>>
Keil5中 头文件出现红叉 编译没有错误 报错 error in include chain () 解决方法!
查看>>