定義乙個父類
一、原型鏈繼承function
father
(name)
}// 例項原型方法
father.prototype.age =18;
fatcher.prototype.
sayaage
=function()
將父類的例項作為子類的原型
優點:function
son(
)son.prototype =
newfather()
;son.prototype.constructor = son;
缺點:二、構造繼承
優點:function
son(name)
缺點:三、組合繼承
結合原型鏈繼承和構造繼承
優點:function
son(name)
son.prototype =
newfather()
;son.prototype.constructor = son;
缺點:四、原型式繼承
優點:function
createobj
(obj)
; f.prototype = obj;
return
newf()
;}
直接通過繼承乙個物件生成乙個物件
缺點:不是類式繼承,而是原型式基礎
五、寄生式繼承
就是原型式繼承的一種擴充套件function
createobj
(obj)
; f.prototype = obj;
return
newf()
;}function
cloneobj
(cloneobj)
六、寄生組合式繼承
通過寄生方式,砍掉父類的例項屬性,避免了組合繼承生成兩份例項的缺點
優點:function
son(name)
son.prototype = object.
create
(father.prototype)
;son.prototype.cunstructor = son;
比較完美
缺點:不通過object.create()
方法實現起來會很複雜
七、es6–class繼承
使用 class + extend 實現繼承class
son extend father
}
js實現繼承的幾種方式
一,js中物件繼承 js中有三種繼承方式 1.js原型 prototype 實現繼承 複製 如下 2.建構函式實現繼承 複製 如下 複製 如下 js手冊中對call的解釋 複製 如下 call 方法 呼叫乙個物件的乙個方法,以另乙個物件替換當前物件。call thisobj arg1 arg2 ar...
JS實現繼承的幾種方式
取自 1.js實現繼承的幾種方式 2.js 物件導向之繼承 多種組合繼承 js作為物件導向的弱型別語言,繼承也是其非常強大的特性之一。那麼如何在js中實現繼承呢?讓我們拭目以待。既然要實現繼承,那麼首先我們得有乙個父類,如下 定義乙個動物類 function animal name 原型方法 ani...
JS實現繼承的幾種方式
前言 js作為物件導向的弱型別語言,繼承也是其非常強大的特性之一。那麼如何在js中實現繼承呢?讓我們拭目以待。既然要實現繼承,那麼首先我們得有乙個父類,如下 定義乙個動物類 function animal name 原型方法 animal.prototype.eat function food 核心...