prototype в реальной жизни
начитался о prototype но не могу придумать куда его на практике применить
встретил такое, но по моему только лишний код, проще функции вызывать var mainPage = null; $(function(){ mainPage = new CMainPage(); }); var CMainPage = function() { this.init(); }; CMainPage.prototype.init = function() { this.initSlider(); }; CMainPage.prototype.initSlider = function(){ ... } чем это лучше такого? $(function(){ initSlider(); }); initSlider = function(){ ... } может памяти меньше занимает т.к. функии в одном объекте или ещё что реквестирую пример использования prototype из реальной практики по работе с DOM, где обычно нужно что-то скрыть/показать/переместить... |
ты вообще понимаешь что такое ООП?
|
да, не понимаю как этот подход применить к управлению DOM
|
я вот тоже не понимаю каким образом обьектно ориентированное программирование основанное на прототипном наследовании ВООБЩЕ связанно с работой с DOM)
|
можно же обработку событий добавлять через прототипы, но не пойму зачем) а в учебниках примеры с птичками и партами
|
animhotep,
К примеру добавить какой нибудь метод для работы с элементом. Допустим добавить в прототип метод hide() скрывающий элемент и тогда можно будет любой элемент скрыть вызовом el.hide()Или допустим напишешь метод ajaxReload() который при вызове обновляет содержимое элемента данными с сервера el.ajaxReload(). Удобно однако :) В общем прототип это объект содержащий методы и свойства доступные тем кто его наследует. Эти методы и свойства создаются только один раз а значит потребляется меньше памяти чем если бы ты в каждый объект добавлял аналогичные методы или свойства. |
я вроде понял что он такое и как работает..
Цитата:
|
Конечно можно. Но зачем засорять область видимости специфичной функцией? К тому же прототипы удобнее и нагляднее использовать:
По твоему методу hide(document.getElementById('some')); С прототипом document.getElementById('some').hide(); PS Когда только начал использовать JS тоже противился прототипам, но после прочтения Флэнагана и JavaScript Шаблоны понял всю мощь и удобство их использования. |
если дело только в именах то мне их не жалко)
Цитата:
|
Да, она. Только есть более новая 2012 года.
JavaScript Шаблоны описывает лучшие практики работы с JS. |
Часовой пояс GMT +3, время: 08:30. |