イナヅマTVログ

[JavaScript] Object.createが使えない時の継承方法

| 0件のコメント

ECMAScript 5のObject.createを使うと継承ができます。
[JavaScript]ECMAScript 5限定、継承にObject.createを使う

ECMAScript 5が使えない時の継承方法。

var extend = (function () {
    var F = function (){};
    return function (P, C) {
        F.prototype = P.prototype;
        C.prototype = new F();
        C.mama = P.prototype;
        C.prototype.constructor = C;
    };
}());
 
// Parent Class
function Parent (x) {
    this.x = x;
}
 
// Child Class
function Child (x) {
    Parent.apply(this, arguments);
}
// 継承
extend(Parent, Child);

引数の順番や関数名や変数名は変えていますが、Scriptは「JavaScriptパターン-―優れたアプリケーションのための作法」に載っているものです。

「JavaScriptパターン」は私には少々難解すぎるのですが参考になることが多く、良い本だなーと思います。
JavaScriptで込み入ったサイトを作ったり、大規模開発を行う必要がある方にはおすすめです。

コメントを残す

必須欄は * がついています


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください