var Person=function(){

  this.person="person";

}

var protoObj=Person.prototype;//每个构造函数都有一个prototype属性,而这个属性的值是一个对象

var p=new Person();

//构造函数的实例的原型对象就是:protoObj; 而protoObj也有自己的原型对象;

//因为new命令运用了call 或者apply,object.create()等方法实现实例对象继承了构造函数中的属性和方法,以及实现继承原型属性和方法;

var obj=new Object();

var objProto=Object.prototype;//此对象是所有构造函数的实例的原型对象的原型对象;

Object.prototype对象有没有它的原型呢?回答可以是有的,就是没有任何属性和方法的null对象,而null对象没有自己的原型。

如果对象自身和它的原型,都定义了一个同名属性,那么优先读取对象自身的属性,这叫做“覆盖”(overriding)。

需要注意的是,一级级向上,在原型链寻找某个属性,对性能是有影响的。所寻找的属性在越上层的原型对象,对性能的影响越大。如果寻找某个不存在的属性,将会遍历整个原型链。

Object.create方法生成的对象,继承了它的原型对象的构造函数。

function A() {} var a = new A(); var b = Object.create(a);//b继承了a的属性和方法,即a成了b的原型对象 b.constructor === A // true b instanceof A // true

转载于:https://www.cnblogs.com/bahongxia/p/7660544.html

prototype 对象的进一步深入理解相关推荐

  1. [js] 说说你对js对象生命周期的理解

    [js] 说说你对js对象生命周期的理解 一切皆对象 咱们经常听到JS中"一切皆对象"?有没有问想过这是什么意思?其它语言也有"一切皆对象"之说,如Python ...

  2. php json 数组 区别,PHP实战:JSON两种结构之对象和数组的理解

    <PHP实战:JSON两种结构之对象和数组的理解>要点: 本文介绍了PHP实战:JSON两种结构之对象和数组的理解,希望对您有用.如果有疑问,可以联系我们. JSON简介 PHP实战JSO ...

  3. 我对对象和引用的理解

    注:看了靖宝华的文章<对"类"和"对象"的深度揣摩与思考...(java初学者)>,我想说一下,在创建一个类对象的情况下,我对"对象&qu ...

  4. Qt|设计模式工作笔记-对单例模式进一步的理解(静态加单例实现专门收发UDP对象)

    目录 理论 源码 理论 这里只说明一点,使用单例模式,私有成员里放一个成员,这个成员是一个静态成员,把构造函数都屏蔽掉(放到protected或者private中即可)使用一个flag,让其只能生成一 ...

  5. js原型对象和原型链理解

    参考:https://blog.csdn.net/yucihent/article/details/79424506 文章内的图是参考一个大神的 但是找不到链接了 一. 函数对象 所有引用类型(函数, ...

  6. JavaScript 原型对象和原型链理解

    一个例子让你彻底明白原型对象和原型链 1. 之前对js中的原型链和原型对象有所了解,每当别人问我什么是原型链和原型对象时,我总是用很官方(其实自己不懂)的解释去描述.有一句话说的好:如果你不能把一个很 ...

  7. Java快速创建大量对象_3分钟 快速理解JVM创建对象的步骤!

    原标题:3分钟 快速理解JVM创建对象的步骤! 我们平时创建一个对象只需要new.然而我们知道对象的创建到底经历了哪些呢?实际上只不过仅仅的3步就完成了.先来看看完整的创建过程,再来一步一步的分析. ...

  8. java类和对象实例对象_Java类、对象和实例的理解

    最近在看Python,这门面向对象的语言又引起了类的引用.对象和实例这些概念之间的纠结,我按照自己的理解总结了一下Java里三者的关系,如果有不对的地方还希望大家指出. 类的引用和对象的概念没什么好弄 ...

  9. js Array.prototype.slice.call(arguments,0) 理解

    Array.prototype.slice.call(arguments,0) 经常会看到这段代码用来处理函数的参数 网上很多复制粘帖说:Array.prototype.slice.call(argu ...

  10. java对象实例_深入理解Java对象实例生成的例子!(转)

    深入理解Java对象实例生成的例子!(转)[@more@]代码如下: class A { public int Avar; public A() { System.out.println(" ...

最新文章

  1. mapdb java_JVM崩溃后MapDb恢复
  2. arthas命令redefine实现Java热更新
  3. XML和JSON的比较
  4. C++ 同步/异步与阻塞/非阻塞的区别
  5. 使用Axis,在webservice的服务器端如何取到客户端的IP地址
  6. 软件设计是怎样炼成的(6)——打造系统的底蕴(数据库设计)(下篇)
  7. PMP考试通过率怎么样?
  8. HTMLCSS字体之引入外部字体
  9. lj245a引脚功能图_lm324工作原理_引脚图功能_特性参数_内部电路及应用电路
  10. eclipse debug 多线程
  11. Linux 系统不能正常关机解决办法
  12. PMP证书女生适合考吗
  13. canopen 报文格式_CANopen协议报文处理
  14. Win7/R2 原生VHD 启动
  15. 【Java SE】数组的打印方式
  16. php上传文件和下载文件,PHP 如何上传文件和下载
  17. C语言字母常量所对应的数字,关于c语言常量的正确表示方法介绍
  18. linux Netfilter在网络层的实现详细分析(iptables)
  19. 业务运营支撑系统  BOSS(Business Operation Support System)。
  20. sci论文致谢部分是必须写的吗

热门文章

  1. [实战]MVC5+EF6+MySql企业网盘实战(20)——Bootstrap Paginator
  2. 小蚂蚁学习C语言(2)——C语言编程预备知识(上)
  3. Perl结合飞信发送免费的天气预报信息
  4. 一个网站的诞生- MagicDict未来予想図1 [水平分割数据表的构想]
  5. 驱动调试助手V2.9
  6. PCAP文件格式分析(做抓包软件之必备)
  7. 字节工程师薪资排世界第五,中位数 43 万美元,2021 全球程序员收入报告出炉!...
  8. 阿里终面:优秀的代码都是如何分层的?
  9. 推荐一款日志切割神器!我常用~
  10. 并发重复请求,这才是优雅的处理方式!