javascript基礎學習系列-原型鏈模式

一、demo代碼以下:git

二、畫圖以下:github

三、規則:瀏覽器

1)每個函數數據類型(普通函數/類)都有一個天生自帶的屬性:prototype(原型),而且這個屬性是一個對象數據類型的值函數

2)而且prototype上瀏覽器天生給它加了一個屬性construtor(構造函數),屬性值是當前函數(類)自己spa

3)每個對象數據類型(普通的對象、實例、prototype...)天生自帶一個屬性:__proto__(左右各兩個_),屬性值是當前實例所屬類的原型(prototype)prototype

4)Object 是js中全部對象數據類型的基類(最頂層的類) code

5)在Object.prototype上沒有__proto__這個屬性對象

四、原型連模式:blog

五、原型鏈模式如圖:原型鏈

六、結果以下(對照畫圖):

      

f1.sum = function(){
 //修改本身的私有的sum
}

f1.__proto__.sum = function(){
//修改所屬類原型上的sum
}

 

更多內容請參考:https://github.com/mqyqingfeng/Blog/issues/2

https://github.com/creeperyang/blog/issues/9

相關文章
相關標籤/搜索