Почему определение свойств в прототипе считается антипаттерном

Я часто вижу этот шаблон для определения объектов javascript

function Person(name) {
    this.name = name;
}
Person.prototype.describe = function () {
    return "Person called "+this.name;
};

. А в этой статье говорится, что добавление свойств непосредственно к объекту-прототипу считается анти-паттерном -.

Исходя из «классических» языков, основанных на классах, необходимость определять свойства отдельно от методов звучит не совсем правильно, тем более в javascript, где метод должен быть просто свойством со значением функции (, я прав здесь?)

Я хотел знать, может ли кто-нибудь объяснить это или даже предложить лучший способ справиться с такими ситуациями

7
задан j08691 10 August 2012 в 14:55
поделиться