Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 18.11.2012, 01:36
Интересующийся
Отправить личное сообщение для aleman Посмотреть профиль Найти все сообщения от aleman
 
Регистрация: 18.02.2012
Сообщений: 24

Задачка про ООП и наследование
Не могу сообразить как можно провернуть следующее:

Есть функция A() и объект B{}.
"А" является еще и объектом, который содержит некоторые методы. ( A.custom )
"B" имеет свои методы (B.test = '...') и наследует методы от "A"

Функция A() - Выводит обьект B, который имеет как свои методы, так и унаследованные от A: ( А().custom; A().test )
Обьект A - только свои методы: ( A.custom )

Возможно ли такое?

Последний раз редактировалось aleman, 18.11.2012 в 17:08.
Ответить с цитированием
  #2 (permalink)  
Старый 18.11.2012, 01:38
Профессор
Отправить личное сообщение для tenshi Посмотреть профиль Найти все сообщения от tenshi
 
Регистрация: 20.03.2008
Сообщений: 1,183

возможно
__________________
.ня
Ответить с цитированием
  #3 (permalink)  
Старый 18.11.2012, 02:05
Интересующийся
Отправить личное сообщение для aleman Посмотреть профиль Найти все сообщения от aleman
 
Регистрация: 18.02.2012
Сообщений: 24

Видимо не правильно задал вопрос.

Если такое возможно, то как это сделать. Покажите пожалуйста.
Ответить с цитированием
  #4 (permalink)  
Старый 18.11.2012, 03:07
Профессор
Отправить личное сообщение для tenshi Посмотреть профиль Найти все сообщения от tenshi
 
Регистрация: 20.03.2008
Сообщений: 1,183

A.prototype= A
__________________
.ня
Ответить с цитированием
  #5 (permalink)  
Старый 18.11.2012, 11:12
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

A = function () { return B; };
A.prototype.custom = "OK";

B = function () {};
B.prototype = A.prototype;
B = new B();
Ответить с цитированием
  #6 (permalink)  
Старый 18.11.2012, 15:07
Интересующийся
Отправить личное сообщение для aleman Посмотреть профиль Найти все сообщения от aleman
 
Регистрация: 18.02.2012
Сообщений: 24

tenshi, ну что у вас за ответы.


melky, этот способ я тоже делал, но он не работает
A = function () { return B; };
A.prototype.custom = "OK";

B = function () { this.test = "Test" };
B.prototype = A.prototype;
B = new B();

console.log( A.custom ) //undefined
Ответить с цитированием
  #7 (permalink)  
Старый 18.11.2012, 15:09
Профессор
Отправить личное сообщение для tenshi Посмотреть профиль Найти все сообщения от tenshi
 
Регистрация: 20.03.2008
Сообщений: 1,183

а что с моими ответами не так?
__________________
.ня
Ответить с цитированием
  #8 (permalink)  
Старый 18.11.2012, 15:19
Интересующийся
Отправить личное сообщение для aleman Посмотреть профиль Найти все сообщения от aleman
 
Регистрация: 18.02.2012
Сообщений: 24

Сообщение от tenshi
а что с моими ответами не так?
Я прошу помочь в решении моей головоломки, а не спрашиваю как делается наследование через прототип.

Мне нужно что бы результат был следующим:
Функция A() - Выводит обьект B который имеет как свои методы, так и унаследованные от A: ( А().custom; A().test )

Обьект A - Выводит только свои методы: ( A.custom )
Ответить с цитированием
  #9 (permalink)  
Старый 18.11.2012, 15:50
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от aleman
melky, этот способ я тоже делал, но он не работает
он работает, просто надо обращаться к свойствам экземпляра

new A().custom



Сообщение от aleman
Функция A() - Выводит обьект B который имеет как свои методы, так и унаследованные от A: ( А().custom; A().test )

Обьект A - Выводит только свои методы: ( A.custom )
тогда надо делать так, как сказал tenshi

объект по себе ничего сам не выводит!
Ответить с цитированием
  #10 (permalink)  
Старый 18.11.2012, 16:09
Интересующийся
Отправить личное сообщение для aleman Посмотреть профиль Найти все сообщения от aleman
 
Регистрация: 18.02.2012
Сообщений: 24

Сообщение от melky
тогда надо делать так, как сказал tenshi
Сообщение от tenshi
A.prototype = A
Я не могу понять как это меня спасет?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
вопрос про наследование noname1990 Общие вопросы Javascript 4 28.06.2012 01:31
Есть ли смысл использовать ООП. Duda.Ml1986@gmail.com Оффтопик 18 18.02.2012 21:47
Как можно что-нибудь узнать про интерфейс чужого объекта GRIG Internet Explorer 0 09.03.2011 17:16
Про наследование mycoding Общие вопросы Javascript 8 26.05.2010 20:44
Вопрос про ООП, цепочки прототипов. Shaci Общие вопросы Javascript 5 27.01.2010 14:50