類的建立new乙個function,在這個function的prototype裡面增加屬性和方法。
原型繼承: 無法給建構函式傳遞引數,改變不了裡面的值
student.prototype = new person();
student.prototype.constructor = student;
借用建構函式可以繼承屬性。 call() 改變函式中的this,直接呼叫函式 person.call(this, name, age, ***); this指向person
如果建立多個物件,裡面的方法就會繼承很多個,造成重複,故方法不能繼承
組合繼承: 構造繼承 + 原型繼承
person.call(this, name, age, ***);
通過原型,讓子型別,繼承父型別中的方法
student.prototype = new person();
student.prototype.constructor = student;
寄生組合繼承
其他的和組合繼承一樣 object.create()使用指定的原型物件及其屬性去建立乙個新的物件
JS物件的建立和原型繼承
1.工廠模式建立物件 2.構造器建立物件 3.原型模式 建構函式存在的缺陷就是,若物件有很多個方法那麼就要建立很多個全域性函式,這樣封裝性就不是特別好,而原型模式就是解決這個問題的,每個函式都有乙個prototype屬性,該屬性是乙個指標,指向乙個物件。4.建構函式和原型模式的組合使用 1.原型鏈 ...
原型 原型鏈 繼承
原型 是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...