码迷,mamicode.com
首页 > 其他好文 > 详细

原型链是什么样的?

时间:2017-07-12 13:49:32      阅读:104      评论:0      收藏:0      [点我收藏+]

标签:type属性   构造   自己   str   div   继承   .com   链接   bsp   

 

 

 

原型链是怎么链接的呢?

简单说下自己的理解:

每个对象都有一个原型对象.   原型对象中存放这这个对象的属性和方法.

每个对象都有一个指针_proto_.  指向自己的原型对象.

每个对象都有一个prototype属性. 这个属性是一个对象, 存放了一些方法和属性,让原型链下游的对象来继承.

 

假设有a b c 三个对象,c继承b, b 继承 a , 这样就形成了一个如图的原型链.

(画得不好,但要表达的意思到了,凑合看吧)

 

技术分享

当然,a.prototype,b.prototype ,c.prototype等等这些,  也是一个对象, 它们也有自己的原型对象.   也是用_proto_指向自己的原型对象.

 

说到原型这块, 就得知道new,  new发生了什么?

第一步 :  初始化一个对象  {} 
第二步 : 将这个对象的 原型对象 指向  构造器的 prototype 属性
第三步 : 构造器函数.call( {}, 参数 )  改变构造器函数中this的指针, 指向{} 这个对象, 并执行构造
                器函数
第四步 : 返回这个对象  {} .

 

原型链是什么样的?

标签:type属性   构造   自己   str   div   继承   .com   链接   bsp   

原文地址:http://www.cnblogs.com/redgreenblue/p/7154794.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!