JSFiddle - React, Tailwind, and code Playground
by Fabian Allel
JavaScript
class Animal {
constructor({raza="no se sabe", peso}){
if(typeof arguments[0]=== "string"){
this.raza = arguments[0];
this.peso = arguments[1];
}else{
this.raza = raza;
this.peso = peso;
}
}
obtenerRaza(){
return this.raza;
}
}
class Humano extends Animal{
constructor(raza, peso){
super(raza, peso);
}
}
var perro = new Animal({raza:"Pastor Alemán", peso:20});
var perro2 = new Animal({raza:undefined, peso:20});
var humano2 = new Humano({raza:undefined, peso:20});
var humano = new Animal("Negro", 80);
console.log(perro.obtenerRaza());
console.log(perro2.obtenerRaza());
console.log(perro instanceof Animal);
console.log(humano2 instanceof Animal);
console.log(humano2 instanceof Humano);
console.log(humano2 instanceof Object);
console.log(typeof humano2);
console.log(typeof Animal);
console.log(humano2.__proto__);
console.log(Animal.prototype);