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_指向原型

相關文章
相關標籤/搜索