JSFiddle - React, Tailwind, and code Playground
by bizt
JavaScript
var Base = function(name){
this.name = name;
}
Base.prototype.extend = function(new_constructor){
//new_constructor.prototype = new this.constructor();
new_constructor.prototype = Object.create(this.constructor.prototype);
new_constructor.prototype.constructor = new_constructor;
return new_constructor;
}
var Robot = Base.prototype.extend(function(name, material){
Base.call(this, name)
this.material = material
this.type = 'robot';
});
var T1000 = Robot.prototype.extend(function(options){
Robot.call(this, options.name, options.material)
this.guns = options.guns;
this.type = 'killer robot';
});
robot = new Robot("Boutros", "metal");
t1000 = new T1000({name: "Arnie", material:"flesh/metal", guns:3});
console.log(robot)
console.log(t1000)