Javascript基於 ‘__proto__’ 的原型鏈

javascript

圖片來自基友 kzloserjavascript

圖片說明

1.總共三類對象(藍色大框)java

2.實例對象(經過new XX() 所獲得的實例),跟原型鏈相關的只有 __proto__ 屬性,指向其對應的原型對象 *.prototype函數

3.構造函數對象分原生和自定義兩類。跟原型鏈相關的有 __proto__ 屬性,除此以外還有 prototype 屬性。它們的 __proto__ 屬性都是指向 Function.prototype 這個原型對象的。prototype 也是指向對應的原型對象。spa

4.原型對象除了同樣擁有 __proto__ 外,也擁有獨有的屬性 constructor 。它的__proto__ 指向的都是 Object.prototype ,除了 Object.prototype 自己,它本身是指向 null 。而 constructor 屬性指向它們對應的構造函數對象。prototype

5.原型鏈是基於 __proto__ 的。實例只能經過其對應原型對象的 constructor 才能訪問到對應的構造函數對象。構造函數只能經過其對應的 prototype 來訪問相應的原型對象。code

相關文章
相關標籤/搜索