js原型链、继承、this指向等老生常谈却依然不熟的知识点——记录解析

开始记录学习过程——git

  很详细的解析过程——http://www.javashuo.com/article/p-atevrwat-bb.htmlgithub

  借鉴阅读——https://github.com/KieSun/Dream/issues/2函数

 

prototype

  显式原型属性。post

  只有函数才拥有该属性学习

  当咱们声明一个函数的时候,这个属性就被自动建立了,这个属性的值是一个对象(原型),且只有一个属性constructorthis

 

_proto_

  每一个对象都有的隐式原型属性。prototype

  指向了建立该对象的构造函数的原型对象

  经过_proto_将对象和原型联系起来组成原型链,得以让对象能够访问到不属于本身的属性原型链

  实例对象如何产生_proto_的?get

  ——使用new操做符,生成的实例对象便有了_proto_属性

 

    调用new过程发生四件事:

      新生成一个对象;

      连接到原型;

      绑定this;

      返回新对象;

 

  总结:

    Object是全部对象的父亲,全部对象均可以经过_proto_找到他。

    Function是全部函数的父亲,全部函数均可以经过_proto_找到他。

    Function.prototype和Object.prototype是两个特殊的对象,由引擎建立

    除了这两个,其他的对象都是经过new构造的

    函数的prototype是一个对象,也就是原型。

    对象的_proto_指向原型

相关文章
相关标签/搜索