最常見的三種繼承方式:
1.建構函式繼承
//建構函式繼承
function people(name)
function student(school)
//例項方法
people.prototype.show = function()
var stu = new student('星星幼兒園')
stu.name; //小明
stu.show() //報錯
缺點:只能繼承父類的例項屬性和方法,不能繼承原型屬性和方法
2.原型繼承
//原型繼承
function people(name)
function student(school)
//例項方法
people.prototype.show = function()
student.prototype = new people() //原型繼承
var stu = new student('星星幼兒園') //建立子類例項時,無法向父類建構函式傳參,因此name為undefined
stu.name; //undefined
stu.show() //success show
缺點:建立子類例項時,無法向父類建構函式傳參
3.組合繼承(建構函式繼承 和 原型繼承)
//組合繼承
function people(name)
function student(school)
//例項方法
people.prototype.show = function()
student.prototype = new people()
var stu = new student('星星幼兒園')
stu.name; //小明
Javascript中的混合繼承
為了解決原型繼承和類繼承中的不足,我們可以使用他們兩種的混個繼承 父類 function father name,age 父類的原型物件屬性 father.prototype.id 10 子類 function son name,age,job son.prototype new father 繼承...
javascript中的類式繼承
輔助函式,讓你可以將新函式繫結到物件的prototype上 為function.prototype增加乙個公有方法。所有由類的擴充的函式都可以使用它,它返回this,當我寫乙個不需要返回值的方法時,我通常讓它返回this,這顧慮到了串聯樣式 function.prototype.method nam...
JavaScript 繼承 組合繼承
繼承 組合繼承 組合繼承也叫做偽經典繼承,指的是將原型鏈和借用建構函式的技術組合到一塊,從而發揮二者之長的一種繼承模式。組合繼承的基本思路是使用原型鏈實現對原型屬性和和方法的繼承,而通過借用建構函式來實現對例項屬性的繼承。組合繼承通過在原型上定義方法實現了函式復用,又能夠保證每個例項都有它自己的屬性...