Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #101 (permalink)  
Старый 11.08.2015, 19:00
Профессор
Посмотреть профиль Найти все сообщения от javaQest
 
Регистрация: 07.08.2015
Сообщений: 154

Erolast,
И кстати, че т я подумал, а какого хрена, ты вообще перезаписываешь прототип прототипа? Не факт, что там чего то не было до этого. Деструкция при множественном наследовании должна делаться явно. . Так что, не годен твой вариант.

Последний раз редактировалось javaQest, 11.08.2015 в 19:03.
Ответить с цитированием
  #102 (permalink)  
Старый 12.08.2015, 07:48
Аватар для Erolast
Профессор
Отправить личное сообщение для Erolast Посмотреть профиль Найти все сообщения от Erolast
 
Регистрация: 24.09.2013
Сообщений: 1,436

Цитата:
Я, честно говоря и не знал, что null&&sоmething возвращает null, не логично это, сука
Такова особенность операторов || и && в JS: они возвращают не булево, а тот из операндов, который может быть приведен к требуемому булевому.

Цитата:
cтатические" св-ва нахер не упали
Поддержка статических свойств нужна для совместимости с классами ES6. Для себя ты можешь убрать этот код, но в моем примере он останется (он не только для тебя, все же).

Цитата:
Да, и вот еще что. Ты все равно не прав, со своим нулем. Если ты подаешь нуль, в качестве второго аргумента, у тебя прототип прототипа субкласса перезаписывается нулем. Это непредсказуемое, и неадекватное поведение.
Установка прототипа в null - это вполне себе классический, общеизвестный и даже прописанный в стандарте (http://www.ecma-international.org/ec...tionevaluation, пункт 6e) прием, использующийся для того, чтобы очистить объект от дефолтных методов, наследуемых из Object.prototype. А ты что, не знал?
Опять же, чисто для себя ты можешь наследование от null вырезать, но из примера я его убирать не буду.

Цитата:
И кстати, че т я подумал, а какого хрена, ты вообще перезаписываешь прототип прототипа? Не факт, что там чего то не было до этого. Деструкция при множественном наследовании должна делаться явно.
Чо? Прототип прототипа - это родитель. Функция inherits устанавливает (== меняет) родителя. Если у тебя класс уже наследовал от чего-то и ты решил функцией inherits назначить нового родителя, то перезапись его вполне логична.

И да, то, что в прототипе прототипа уже что-то было до этого - это факт. По умолчанию родителем любого класса является Object (Object.getPrototypeOf(Function.prototype) == Object.prototype).

Последний раз редактировалось Erolast, 12.08.2015 в 07:51.
Ответить с цитированием
  #103 (permalink)  
Старый 12.08.2015, 09:35
Профессор
Посмотреть профиль Найти все сообщения от javaQest
 
Регистрация: 07.08.2015
Сообщений: 154

Сообщение от Erolast
Чо? Прототип прототипа - это родитель. Функция inherits устанавливает (== меняет) родителя. Если у тебя класс уже наследовал от чего-то и ты решил функцией inherits назначить нового родителя, то перезапись его вполне логична.

И да, то, что в прототипе прототипа уже что-то было до этого - это факт. По умолчанию родителем любого класса является Object (Object.getPrototypeOf(Function.prototype) == Object.prototype).
объясняю популярно. У меня цепочка A->B->C->D->E, я захотел чтобы, E унаследовал от Z, сделав это, я потеряю, A->B->C, это разве не смешно? Мало того, ты неявно изменишь родителя D, и все классы и объекты, наследующие от D изменят свое поведение. Ты сам то веришь в бред, который ты несешь? Это очевидно даже школьнику. Зачем ты позоришься? Ну обосрался, признай ошибку, делов то.
Сообщение от Erolast
устанавливает (== меняет
устанавливать != менять
//fixed

ты должен дополнять в данном случае, ничего существующего не трогая и не ломая.

Остальные твои перделки меня не интересуют, есть они или нет, мне похеру, они роли не играют. Просто сделай мне то, на что ты подписался. Реализуй множественное наследование.

Последний раз редактировалось javaQest, 12.08.2015 в 09:58.
Ответить с цитированием
  #104 (permalink)  
Старый 12.08.2015, 09:40
Профессор
Посмотреть профиль Найти все сообщения от javaQest
 
Регистрация: 07.08.2015
Сообщений: 154

Сообщение от Erolast
Установка прототипа в null - это вполне себе классический, общеизвестный и даже прописанный в стандарте (http://www.ecma-international.org/ec...tionevaluation, пункт 6e) прием, использующийся для того, чтобы очистить объект от дефолтных методов, наследуемых из Object.prototype. А ты что, не знал?
Я тебе не про установку прототипа в нуль говорю, а про то, что ты под ковром, не совсем очевидным для пользователя образом, это делаешь, непонятно зачем. В контексте данной задачи это выглядит нелепостью. Это не нужно. Но можешь оставить, это принципиально ничего не меняет, только усложняет твою реализацию.

Последний раз редактировалось javaQest, 12.08.2015 в 09:56.
Ответить с цитированием
  #105 (permalink)  
Старый 12.08.2015, 09:45
Профессор
Посмотреть профиль Найти все сообщения от javaQest
 
Регистрация: 07.08.2015
Сообщений: 154

Сообщение от Erolast
И да, то, что в прототипе прототипа уже что-то было до этого - это факт
Естественно, я имел в виду что-то отличное от Object. Не надо тут строить непонимающие глазки. Ты может и глуп, но не настолько чтобы этого не понимать.
Ответить с цитированием
  #106 (permalink)  
Старый 12.08.2015, 11:12
Аватар для Erolast
Профессор
Отправить личное сообщение для Erolast Посмотреть профиль Найти все сообщения от Erolast
 
Регистрация: 24.09.2013
Сообщений: 1,436

Цитата:
ты неявно изменишь родителя D, и все классы и объекты, наследующие от D изменят свое поведение.
С какой стати?

Цитата:
ты должен дополнять в данном случае, ничего существующего не трогая и не ломая.
Нет. Если функция называется inherits - значит, она должна перезаписывать. Чтобы добавлять родителя, надо, чтобы функция называлась addParent.
Энивей, это не имеет никакого отношения к реализации множественного наследования. Такое ощущение, что ты понял, что проигрываешь, и просто пытаешься увести разговор в сторону.

Цитата:
Реализуй множественное наследование.
Оно уже реализовано.
Ответить с цитированием
  #107 (permalink)  
Старый 12.08.2015, 11:49
Профессор
Посмотреть профиль Найти все сообщения от javaQest
 
Регистрация: 07.08.2015
Сообщений: 154

Сообщение от Erolast
С какой стати?
по определению. потому что ты перезаписал прототип.
Сообщение от Erolast
Оно уже реализовано.
почитай где-нибудь в умных книжках, что такое множественное наследование, посмотри различные реализации в других языках, а потом мы вернемся к этому разговору. Удачи.
Ответить с цитированием
  #108 (permalink)  
Старый 12.08.2015, 11:58
Профессор
Посмотреть профиль Найти все сообщения от javaQest
 
Регистрация: 07.08.2015
Сообщений: 154

Erolast,
Кстати, че то обезьяны не видно. ИМХО, это не справедливо, что ты один отдуваешься, это же фактически, его позор а не твой, ты хоть что-то попытался напейсать, а от него мы тут ни строки внятного кода не видали. Как только запахло жареным, он прижух, хотя веселые картиночки выкладывает.
Ответить с цитированием
  #109 (permalink)  
Старый 12.08.2015, 12:00
Профессор
Посмотреть профиль Найти все сообщения от javaQest
 
Регистрация: 07.08.2015
Сообщений: 154

Erolast,
Он наверное сидит, и проклинает тебя, за то что ты свою обфучкацию расшифровал, и народ узрел истину
Ответить с цитированием
  #110 (permalink)  
Старый 12.08.2015, 12:05
Профессор
Посмотреть профиль Найти все сообщения от javaQest
 
Регистрация: 07.08.2015
Сообщений: 154

Сообщение от Erolast
Если функция называется inherits - значит, она должна перезаписывать. Чтобы добавлять родителя, надо, чтобы функция называлась addParent.
LOL, значит все дело в названии? Ну назови addParent, я разрешаю.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вставка HTML кода и JS кода через innerHTML zhurchik AJAX и COMET 1 31.10.2014 17:32
Как визуализировать структуру кода? dkudrin Общие вопросы Javascript 2 22.08.2014 19:12
скрыть из исходного кода часть javascript кода. javasc Javascript под браузер 10 12.03.2014 09:32
Удаление участка кода replace Dorian_bs Общие вопросы Javascript 3 23.11.2012 23:19
Пример кода сохранения в базу html страницы генерированного посредством JavaScripts wayzer Серверные языки и технологии 2 06.09.2012 16:46