JSFiddle - React, Tailwind, and code Playground
by William Sena
HTML
<div id="results">
</div>
CSS
body{
font-family: "Verdana";
}
JavaScript
var Animal = function Animal(){};
Animal.prototype = {
setResult: function setResult(message){
var result = document.createElement('p');
result.innerHTML = message + '<br/>Strength: ' + String(this.strength);
document.getElementById("results").appendChild(result);
}
};
var Lion = function Lion(){};
Lion.prototype = {
strength: 10,
name: 'Lion',
roar: function roar(){
this.setResult(this.name + ' Rooooaaarrrrrr.');
}
};
var Falcon = function Falcon(){};
Falcon.prototype = {
strength: 2,
name: 'Falcon',
fly: function fly(){
this.setResult(this.name + ' flying.');
}
};
var LionFalcon = function LionFalcon(){};
Lion.prototype = Object.assign({}, Lion.prototype, Animal.prototype);
Falcon.prototype = Object.assign({}, Falcon.prototype, Animal.prototype);
LionFalcon.prototype = Object.assign({}, LionFalcon.prototype, Falcon.prototype, Lion.prototype, Animal.prototype);
//Ajustando nova classe
LionFalcon.prototype.name = 'Lion Falcon';
var lion = new Lion();
var falcon = new Falcon();
var lionFalcon = new LionFalcon();
(function(){
function roar(){
for(var i=0, c=arguments.length; i<c; i++){
if(arguments[i].roar){
arguments[i].roar();
}
}
}
function fly(){
for(var i=0, c=arguments.length; i<c; i++){
if(arguments[i].fly){
arguments[i].fly();
}
}
}
roar(lion, falcon, lionFalcon);
fly(lion, falcon, lionFalcon);
})();