原型鏈實現繼承
基本模式
function過程圖示1.supertype()
supertype.prototype.getsupervalue = function
()function
subtype()subtype.prototype= new
supertype();
//這一步和上一步不可以調換順序,否則getsubvalue會被新的supertype例項覆蓋
subtype.prototype.getsubvalue = function
()let instance = new
subtype();
console.log(instance.getsupervalue());
function建立子類父類建構函式,各自自動生成預設的prototype。其中supertype的原型上新增了方法getsupervalue。supertype()
supertype.prototype.getsupervalue = function
()function
subtype()
new supertype() 實現的效果:為新的prototype新增乙個方法:()
問題
原本在父類上屬於例項的屬性在繼承後變成了子類的原型屬性
建立subtype例項時,無法在向supertype的建構函式傳參,從supertype繼承來的屬性值不能自定
對繼承來的引用型別的屬性,在任乙個例項上做的修改會體現在所有例項上
js之原型鏈 繼承
首先來總結一下自己對原型鏈的的理解,直白的說就是 為例項物件查詢方法屬性提供乙個橋梁,在原型鏈中,proto 是至關重要的東西,上圖 繼承,說白了就是繼承父親的屬性,方法 繼承屬性可以使用father.call this,name,age,來實現 繼承方法就不行了,得使用原型物件的查詢機制 發不多說...
原型 原型鏈 繼承
原型 是function物件的乙個屬性,它定義了建構函式 製造出的物件 的公共祖先。通過該建構函式產生的物件,可以繼承該原型的屬性和方法。原型也是物件 這定義有點模糊,用 解釋一下 我們在控制台中列印出了這個,首先son物件的建構函式是foo,但是我們的foo中什麼屬性都沒有,怎麼會出現乙個 pro...
原型 原型鏈 繼承
在 js 中,一切皆物件!下面就讓我們從建立物件開始,逐步學習js中的核心知識 原型,原型鏈,繼承等 1.字面量方式建立物件 var obj var obj1 2.使用 new object 的方式建立物件 var obj2 new object obj2.name 張三 obj2.age 13 o...