かずきのBlog@hatena

すきな言語は C# + XAML の組み合わせ。Azure Functions も好き。最近は Go 言語勉強中。日本マイクロソフトで働いていますが、ここに書いていることは個人的なメモなので会社の公式見解ではありません。

WinJSでクラスを混ぜる

WinJSのWinJS.Class.mixを使うとオブジェクトを混ぜ合わせることができるようになります。

犬と人のキメラ

名前を持って自己紹介出来るオブジェクトと、わんわんと鳴く犬を作ってmixで混ぜ合わせます。

// 自己紹介できる人
var Person = {
    name: {
        get: function () { return this._name; },
        set: function (v) { this._name = v; }
    },
    presentation: function () { console.log("私の名前は" + this.name + "です"); }
};

// 犬
var Dog = {
    voice: function() { console.log("わんわん"); }
};

// キメラ化!
var Chimera = WinJS.Class.mix(
    function(name) { this.name = name; },
    Person, Dog);

// 自己紹介も鳴くこともできる
var chimera = new Chimera("tanaka");
chimera.presentation(); // 私の名前はtanakaです
chimera.voice(); // わんわん

ふむ。混ぜ混ぜ。