Показать сообщение отдельно
  #5 (permalink)  
Старый 14.04.2013, 18:31
Интересующийся
Отправить личное сообщение для Aves Посмотреть профиль Найти все сообщения от Aves
 
Регистрация: 14.12.2011
Сообщений: 12

Я далеко не специалист в ООП, и классическое наследование большинства ЯП приводит меня в уныние. А вам оно похоже нравится, потому что вы пытаетесь его отыскать там, где его нет. Вроде как только в ES6 появится обертка над прототипным наследованием, похожая на классическое.

В прототипном вроде есть тонкости и детали, но лично мне кажется, что главное понять то, что все объекты создаются функциями на основании прописанного в функции объекта-прототипа. И всё.
Взяли любую функцию, прописали ей прототип, вызвали с new, получили объект с нужной цепочкой прототипов, и соответственно нужными методами и свойствами.
function f(){}
f.prototype = new String();
s = new f();
typeof s.toLowerCase // 'function'
f.prototype.myTest = 'qwerty';
s.myTest; // 'qwerty'

То есть прототипы ставить нужно у функции-конструктора, а не у созданного объекта.
Ответить с цитированием