Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 10.02.2012, 20:10
Профессор
Посмотреть профиль Найти все сообщения от Mахmахmахimus
 
Регистрация: 10.02.2012
Сообщений: 254

В чем суть приватных методов?
В чем суть приватных методов свойств?
В том чтобы к ним нельзя было обратится через точку, и в том чтобы их нельзя было перезаписать, то есть если создашь паблик свойство с таким же именем, то методы все ровно будут использовать приватное свойство, я правильно понимаю суть?

То есть нужно сделать так чтобы методы искали идентификаторы сначала в приватных свойствах, потом если не находили, то использовали паблик свойства, потом если не находили там, то использовали глобальную область видимости?

Последний раз редактировалось Mахmахmахimus, 10.02.2012 в 20:33.
Ответить с цитированием
  #2 (permalink)  
Старый 10.02.2012, 21:45
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

Mахmахmахimus,
по второму кругу пошел?
Ответить с цитированием
  #3 (permalink)  
Старый 10.02.2012, 22:35
Профессор
Посмотреть профиль Найти все сообщения от Mахmахmахimus
 
Регистрация: 10.02.2012
Сообщений: 254

Не, я пытаюсь первый круг доделать и понял что я не понял сути приватных)
Я просто подумал, если суть в том чтобы имя было свободными, то что мешает называть приватные просто с префиксом __ .
Да, и у меня вопрос, можно как то задваавть флаги свойствам, не перебираемый, скрытый и.т.п. ? в 1.7 версии
Ответить с цитированием
  #4 (permalink)  
Старый 10.02.2012, 23:05
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

Сообщение от Mахmахmахimus
то что мешает называть приватные просто с префиксом __
это имеет смысл в Python, в JS нет.
Сообщение от Mахmахmахimus
Да, и у меня вопрос, можно как то задваавть флаги свойствам, не перебираемый, скрытый и.т.п.
Object.defineProprty() и пр. из Object в ECMASript 5

Последний раз редактировалось monolithed, 10.02.2012 в 23:17.
Ответить с цитированием
  #5 (permalink)  
Старый 10.02.2012, 23:12
Профессор
Посмотреть профиль Найти все сообщения от Mахmахmахimus
 
Регистрация: 10.02.2012
Сообщений: 254

Сообщение от monolithed
это имеет смысл в Python, в JS нет.
И почему же в js не имеет смысла разделять простанство имен свойств на __ и без __?
Ответить с цитированием
  #6 (permalink)  
Старый 10.02.2012, 23:23
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

Сообщение от Mахmахmахimus
И почему же в js не имеет смысла разделять простанство имен свойств на __ и без __?
потому что в JS __ - лишь префикс переменной и никакого специального значения в объекте активации не имеет.
Ответить с цитированием
  #7 (permalink)  
Старый 10.02.2012, 23:31
Профессор
Посмотреть профиль Найти все сообщения от Mахmахmахimus
 
Регистрация: 10.02.2012
Сообщений: 254

Но нам не нужен обьект активации, нам нужно чтобы мы могли использовать все понравившиеся имена при этом не боясь что либо перезаписать из приватных свойств.

Например у меня есть приватное свойство __go

в нем лежить функция ХОДИТЬ. я потомку могу добавить свойство go и использовать его как захочу, при том приватное свойство потомка __go не запорися. Я буду ограничен лишь тем что не смогу ставить 2 жестких пробела в своих паблик именах.

Последний раз редактировалось Mахmахmахimus, 10.02.2012 в 23:34.
Ответить с цитированием
  #8 (permalink)  
Старый 10.02.2012, 23:52
Аватар для poorking
prodigy
Отправить личное сообщение для poorking Посмотреть профиль Найти все сообщения от poorking
 
Регистрация: 01.11.2010
Сообщений: 503

Mахmахmахimus,
Ну тогда уж это будет protected, а не private, оно будет наследоваться
__________________
readOnly
Ответить с цитированием
  #9 (permalink)  
Старый 11.02.2012, 00:37
Профессор
Посмотреть профиль Найти все сообщения от Mахmахmахimus
 
Регистрация: 10.02.2012
Сообщений: 254

poorking,
а, ясно, я все еще не понимаю зачем нужны приватные свойства, по сути это свойства СУЩНСОТЕЙ к которым имеют доступ только что?
Ответить с цитированием
  #10 (permalink)  
Старый 11.02.2012, 11:55
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

Сообщение от Mахmахmахimus
я все еще не понимаю зачем нужны приватные свойства
Я уже советовал почитать литературу или пойти на курсы кройки шитья
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Скрипт не работает в FF и опера, но работает в IE(в чем дело???) Cepera Firefox/Mozilla 1 24.08.2012 16:46
Список специфичных методов для FF why.not? Firefox/Mozilla 2 01.11.2010 12:58
Добавление методов к стандартным объектам и совместимость кода Василий Б. Общие вопросы Javascript 10 20.07.2010 12:00