function cagar() {
console.log('cagando')
}
class Cachorro {
constructor () {
Object.assign(Cachorro.prototype, { cagar })
}
latir(){
console.log('au au au')
}
}
class Gato {
constructor () {
Object.assign(Gato.prototype, { cagar })
}
miar(){
console.log('miau')
}
}
var gato = new Gato()
console.log('gato caga?')
gato.cagar()
console.log('gato mia?')
gato.miar()
console.log('gato late?')
gato.latir()// https://developers.caffeina.com/object-composition-patterns-in-javascript-4853898bb9d0
// https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Object/assign