javaScript 原型 和 原型链
- 每个实例对象( object )都有一个私有属性(称之为 __proto__ )指向它的构造函数的原型对象(prototype )。
- 该原型对象也有一个自己的原型对象( __proto__ ) ,层层向上直到一个对象的原型对象为
null
。 - 根据定义,
null
没有原型,并作为这个原型链中的最后一个环节。 - 任意一个对象的 原型 的 原型 的 原型 == null
- 试图访问一个对象的属性时,它不仅仅在该对象上搜寻,还会搜寻该对象的原型,以及该对象的原型的原型,依次层层向上搜索,直到找到一个名字匹配的属性或到达原型链的末尾。
- 如果对象本身和原型都有该属性,以该对象本身属性为准,
- 在原型链上查找属性比较耗时,对性能有副作用,
- 试图访问不存在的属性时会遍历整个原型链。
- 遍历对象的属性时,原型链上的每个可枚举属性都会被枚举出来。
- 要检查对象是否具有自己定义的属性,而不是其原型链上的某个属性,则必须使用所有对象从
Object.prototype
继承的hasOwnProperty
方法。 - Object.keys() 。方法,得到的 keys ,也是对象本身的,不会得到它原型链
function F() {this.a = 1;this.b = 2
}F.prototype.b = 3F.prototype.d = 4var f = new F();f.__proto__ == F.prototype // truef.__proto__.constructor == F // trueF.prototype.constructor == F // trueF.prototype.__proto__.constructor == Object // trueFunction.prototype.__proto__.constructor == Object // trueObject.__proto__.__proto__.__proto__ == null // true;f.__proto__.__proto__.__proto__ == null // true;
javaScript 原型 和 原型链相关推荐
- (转)【javascript基础】原型与原型链
原文地址:http://www.cnblogs.com/allenxing/p/3527654.html 前言 原型是什么 理解原型对象 原型对象 isPrototypeOf hasOwnProper ...
- javascript之原型与原型链
前言 了解JavaScript的原型与原型链有助于我们更深层次的理解这门语言,看过很多相关的文章,写的都很好,下面是根据自己的理解,一步步揭开原型与原型链 正文 一.数据类型 在JavaScr ...
- JavaScript原型与原型链(总结篇)
系列文章推荐 JavaScript原型与原型链(基础篇) JavaScript原型与原型链(进阶篇) JavaScript原型与原型链(总结篇) 1 构造函数和实例对象 构造函数的prototype属 ...
- JavaScript对象、原型、原型链知识总结思维导图
这个思维导图是我对Object,原型,原型链等知识的总结,主要参考高程一书第六章,写完才发现这么多,以后可能会进行精简.内容可能会出现差错,欢迎批评指正.下载==>Github ECMAScri ...
- JavaScript对象——原型与原型链
原型与原型链 一. 普通对象与函数对象 JavaScript 中,万物皆对象!但对象也是有区别的.分为普通对象和函数对象,Object .Function 是 JS 自带的函数对象.下面举例说明 va ...
- javascript——原型与原型链
一.prototype 在JavaScript中,每个函数都有一个prototype属性,这个属性指向函数的原型对象. 例如: function Person(age) {this.age = age ...
- 深入理解JavaScript系列(5):强大的原型和原型链
前言 JavaScript 不包含传统的类继承模型,而是使用 prototypal 原型模型. 虽然这经常被当作是 JavaScript 的缺点被提及,其实基于原型的继承模型比传统的类继承还要强大.实 ...
- 对Javascript 类、原型链、继承的理解
一.序言 和其他面向对象的语言(如Java)不同,Javascript语言对类的实现和继承的实现没有标准的定义,而是将这些交给了程序员,让程序员更加灵活地(当然刚开始也更加头疼)去定义类,实现继承 ...
- JavaScript高级day02-AM【函数的prototype、显式原型与隐式原型、原型链】
笔记.视频.源码:JavaScript(基础.高级)笔记汇总表[尚硅谷JavaScript全套教程完整版] 目 录 P15 15.尚硅谷_JS高级_函数的prototype 15:04 1. 函数 ...
- java原型链_深入总结Javascript原型及原型链
本篇文章给大家详细分析了javascript原型及原型链的相关知识点以及用法分享,具有一定的参考价值,对此有需要的朋友可以参考学习下.如有不足之处,欢迎批评指正. 我们创建的每个函数都有一个 prot ...
最新文章
- [register]-TCR(Translation Control Register)寄存器详解
- 汉诺塔的实现 c++
- 女性自我的迷宫:看EMI的人体自拍
- 运行时的Java 8参数名称
- STM32CubeMx HAL库使用硬件IIC读写AT24C02
- Virtual DOM(虚拟dom-1)
- 正月十五元宵节中国风海报PSD分层模板找灵感!
- html鼠标位置采集,css – HTML – 相对于鼠标指针的工具提示位置
- [数位dp][状压dp] Jzoj P3458 密码
- 20191128每日一句感恩节
- 大一html网页制作PPT,HTML网页制作.ppt
- 二维码:Data Matrix和QRCode
- 暴笑新东方老师老罗语录(转)
- 机器学习在美团配送系统的实践:用技术还原真实世界-笔记
- 医疗人工智能发展趋势及机遇
- 2023电工杯数学建模A题思路模型代码
- 计算机音乐制作手册,计算机音乐制作手册
- 品牌推广方案案例(二十个品牌策划经典案例分析)
- win7卸载JDK出现windows Installer程序包有问题
- 【火龙果】评测二 从开发板电路设计入手