Dlaczego definiowanie właściwości w prototypie jest uważane za przeciwwskazanie
Często widzę ten wzorzec do definiowania obiektów javascript
function Person(name) {
this.name = name;
}
Person.prototype.describe = function () {
return "Person called "+this.name;
};
I wTen artykuł mówi, że dodawanie właściwości bezpośrednio do prototypowego obiektu jest uważane za anty-wzór.
Pochodzący z języków „klasycznych”, definiowanie właściwości poza metodami nie brzmi całkiem dobrze, bardziej w języku javascript, gdzie metoda powinna być po prostu właściwością o wartości funkcji (czy jestem tutaj?)
Chciałem wiedzieć, czy ktoś może to wyjaśnić, a nawet zaproponować lepszy sposób radzenia sobie z tymi sytuacjami