Сегодня я увидел шаблон JavaScript, который никогда не видел за всю свою жизнь. Я не могу сказать цель использования этого шаблона. Мне это кажется неправильным, но я хочу быть немного консервативным. Это может быть какой-то удивительный узор, который я никогда раньше не видел.
function Dog() {
Dog.prototype.bark = function () {
alert('woof!');
}
this.bark = function () {
Dog.prototype.bark();
}
this.bark();
}
Во-первых, я не сторонник создания методов (как привилегированных членов) внутри конструктора без всякой причины. Это вызовет создание функций каждый раз, когда создается экземпляр. Во-вторых, в этом фрагменте кода он также называет имя прототипа «Собака», а не «этот». Это меня очень смущает.
Кто-нибудь знает, что в нем хорошего?
Спасибо! Милость