JSFiddle - React, Tailwind, and code Playground

JavaScript

// http://daniel.steigerwald.cz (MIT Licensed)

var Animal = function(name) {
    this.name = name;
};

Animal.prototype = {
    getName: function() {
        return this.name;
    }
};

var mici = new Animal('Mici');
var kevi = new Animal('Kevi');

alert(mici.getName()); // Mici
alert(kevi.getName()); // Kevi

// chci přidat syntax sugar metodu
Animal.prototype.alertName = function() {
    alert(this.getName());
};
// hle!, metoda se přidala k již existující instanci
mici.alertName();

// chci změnit getName
Animal.prototype.getName = function() {
    return 'Mé jméno je: ' + this.name;
};
// ha!, metoda se změnila všem existujícím instancím
kevi.alertName();

// důkaz, že metody jsou sdílené
alert(mici.getName === kevi.getName); // true
alert(mici.getName === Animal.prototype.getName); // true