2017-02-04 3 views
0

(これはばかな質問がある場合、私は、そう私の謝罪をJavaScriptと全体のプロトタイプ/継承概念に少し新しいです)、私は明かす-モジュール・パターン・タイプの寄せ集めを持っています次に、私はConstructor-Pattern(インスタンスが新しくなったところ)を使用するオブジェクトも持っています。Module PatternオブジェクトはConstructor Patternオブジェクトから継承できますか?私のコードベースで</p> <p>

また、EventEmitter機能を提供するコードブロック(constructor-type-patternで書かれています)があります。 Constructor-PatternオブジェクトとRevealing-Module-Patternオブジェクトの両方の基本クラスとしてこのコードを使用できますか? これをやろうとしても意味がありますか?

+0

あなたの質問はかなり曖昧です。実際にJavaScriptでコードを再利用することは可能ですが、それを行う手段は状況によって異なります。あなたがしたいことの具体的な例を提供しておけば助けになります。 – lleaff

答えて

1

最初に、 "constructor-type-pattern"オブジェクトは従来の継承形式に従います.1つのクラスが別のクラスを拡張し、オブジェクトのインスタンスを作成します。

「明らかモジュール・パターン」のデータをカプセル化し、その部分だけを露出させるだけの方法で、インスタンスの概念がありませんクラスあなたがそのパターンを使用します。
このような「普通の古いオブジェクト」からコードを再利用する場合は、"prototypal inheritance"を使用できます。これは、子オブジェクトが持っていないメンバを要求されるたびに親オブジェクトを指すことを意味します。

どちらの場合でも、プロトタイプのオブジェクトを持つオブジェクトを作成する場合はObject.createを使用し、examples at MDNをチェックしてください。

また、ES2015が外出しており、古くさいOOPをnative syntactic sugarという形でclassextendsという形で表示しています。

関連する問題