How ECMAScript 5 still does not allow to subclass an arrayに関する kangax のブログを読んでいます。ここで彼は、通常のプロトタイプ構造とは異なるサブクラス化のアプローチを使用しています。
BaseClass.prototype = new Superclass();
彼がしていることはこれです:
function clone(obj) {
function F() { }
F.prototype = obj;
return new F();
}
次に、次のように継承を設定します。
function Child() { }
Child.prototype = clone(Parent.prototype);
誰かが継承のこの 2 つの部分からなるアプローチと、上記の単純な 1 つのライナーのアプローチに比べてどのような利点があるかを説明できますか?
編集:コメントから、Object.create()
基本的にメソッドと同じ目的を解決する標準があることを理解してclone()
いますが、この実装はどのように機能しclone()
ますか?