function Super( args ){
this.init( args );
}
Super.prototype = {
constructor: Super,
init: function( args ){
this.name = args.name;
}
};
Расширяю его -
var Child = ( function( SUPER ){
function Child( args ){
SUPER.call( this, args );
// Child.super.init.call( this, args ); //
// сделать так, как мне кажется, не совсем правильно
// так как потомку приходится хранить логику инициализации
// своего супер объекта.
//
// Вопрос - как наиболее элегантно можно выйти из
// сложившейся затруднительной ситуации, на js 5
}
Child.prototype = Object.create( SUPER.prototype );
Child.prototype.constructor = Child;
Child.super = SUPER.prototype;
Child.prototype.init = function( args ){
this.color = args.color;
};
return Child
}( Super ) );