Core > 継承

prototypeオブジェクトを用いた擬似的な継承

by s_hiroshi

JavaScript

// prototypeオブジェクトを用いた擬似的な継承
var Foo = function _Foo() {};
Foo.prototype.fooShowName = function _fooShowName() {
    console.log('Foo method');
};

var Bar = function _Bar() {};
Bar.prototype.barShowName = function _barShowName() {
    console.log('Bar method');
};

// var x in Foo正常に動作しない typeof Foo -> function
// in演算子はobjectに対して作用
var objFoo = new Foo();
for (var x in objFoo) {
    Bar.prototype[x] = objFoo[x];
};

var objBar = new Bar();
objBar.barShowName();
objBar.fooShowName();