2011-03-29 3 views
3

例のコードはここにある:javascriptの寄生組み合わせ継承と複合継承の違いは何ですか?相続のこれらの2つのタイプの

寄生コンビネーション継承:http://jsfiddle.net/dKKaS/

コンビネーション継承:http://jsfiddle.net/XZn3A/

は、誰かが私の違いを教えてもらえますか?ありがとう。

+0

google.comに行って「寄生虫の組み合わせ継承」を検索すると、この投稿は#1になり、15分前に投稿されました.... –

+0

1つの違いは、 parasiticを使った両方の型のコンストラクタは違っていますが、通常の場合、どちらも 'SuperType'になります。 – mVChr

+8

書籍に関する質問をするときは、作品に関する情報を含めてください。それは人々があなたを助けるだけでなく、コードを正しく帰属させるのに役立ちます。この例は、Web DevelopersのProfessional JavaScript、Nicholas C. Zakas(Wrox、2009)のSecond Edition *からの例です。最初の例は179-180ページに、2番目の例は176-177ページにあります。 – Dori

答えて

2

答えは、寄生結合の継承では、基本コンストラクタは一度だけ呼び出されるということです。コンビネーション継承では、コンストラクタが2回呼び出されます。

+0

コンストラクタを2回呼び出す特別な理由や使い方はありますか? – Blake

+0

@Blake ...コンストラクタを2回呼び出す理由はありません。それは実際に寄生虫の組み合わせ継承の問題を解決します。 – nonybrighto