Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 18.07.2016, 08:39
Интересующийся
Посмотреть профиль Найти все сообщения от ES6privates
 
Регистрация: 18.07.2016
Сообщений: 25

Приватные свойства и методы в JavaScript
Как вам идея? https://github.com/tc39/proposal-pri...elds/issues/36

Мы просто сделаем "приватные метки" которые будут иметь область видимости файла, и смогут применяться как имена свойств, к любым обьектам и выражениям внутри файла, а не только к this. Но при экспорте эти свойства будут недоступны, внешним скриптам.




Последний раз редактировалось ES6privates, 20.07.2016 в 10:01.
Ответить с цитированием
  #2 (permalink)  
Старый 19.07.2016, 07:12
Аватар для Erolast
Профессор
Отправить личное сообщение для Erolast Посмотреть профиль Найти все сообщения от Erolast
 
Регистрация: 24.09.2013
Сообщений: 1,436

Черт, я ж тебя защищать собирался... А ты опять свои выебоны начал.

Цитата:
Меня и на стак оверфлоу заминусовали, и тут заминусовали. Видимо люди не любят гениев и завидуют им ^^. Либо просто не в состоянии осознать всю эпичность и революционность этого решения.
Да потому что ты припёрся и под видом изобретения нам всем известный баян представил.
Это, к слову, одна из реализаций, которую рассматривают для введения синтаксиса приватных свойств. Вторая реализация - через WeakMap.
Ответить с цитированием
  #3 (permalink)  
Старый 19.07.2016, 07:16
Интересующийся
Посмотреть профиль Найти все сообщения от ES6privates
 
Регистрация: 18.07.2016
Сообщений: 25

Сообщение от Erolast
Да потому что ты припёрся и под видом изобретения нам всем известный баян представил.
Это не всем известный баян, это никому не известный способ. До этого люди вообще не додумывались так сделать и писали лишь протектед _свойства, а же предложил рабочее решение даже для es5

Сообщение от Erolast
А ты опять свои выебоны начал.
Я выебонами ЗАЩИТИЛ свою репутацию от минусов. Меня минусанули, унизили, я оправдался и дкоазал что я гений а минус не заслуженно. Я - изменился. Я первое сообщение написал прекрасно, потом какой то хуесос меня минусанул и я АДЕКВАТНО отреагировал.

Я ваще красавчик и вообще все правильно сделал и делаю.


При чем я же предложил кучу раз это реализовать в Кофескрипте еще года полтора назад на уровне сахара! Где меня аутисты банили доказывая что раз можно написать так obj[0.323223544545] и получить таки доступ к свойству, то оно видители не приватное.

То что сейчас люди начали это делать это все моя заслуга в том числе. Я видел только одного человека который в 2015 году, кроме меня, предлагал использовать символы и рандомные ключи для приватных. Это не баян. А паттерн о котором ни кто не знает. И которй Я, пытаюсь популяризировать и добавить к нему сахар.

Понял теперь? ЧТО ИМЕННО ТАКИЕ КАК Я и ПРИДУМЫВАЮТ ТАКИЕ ШТУКИ! И вот ты щас стал свидетелем КАК мы это делаем!


Учитывая что не все такие умные как я, я напишу прямым текстом: НЕ БЫЛО ТАКОГО ЧТО Я ТОЛЬКО ЧТО ДОДУМАЛСЯ ДО ЭТОГО И СРАЗУ НАПСИАЛ, я это юзаю уже года 1-2. И создаю об этом тикеты года 1-2

Так же я активно пытаюсь внедрить сахар для оборащения к статик свойствам.

чтобы писать не this.constructor.prop а static.prop внутри методов. так как если писать Class.prop то тогда статические свойства теряют возможность оверрайдится при наследовании.


this.#prop годный кстати сахар, впервые вижу такую идею, обычно все заменяли this на какой то значек.

Сообщение от Erolast
Вторая реализация - через WeakMap.
Он не нужен так как есть this, в котором надо хранить свойства. Когда удаляется ссылка на this удаляется и все с ней связаное. Семантика WeakMap уже заложена в this, и WeakMap это же вещь которую не эмулировать в ES5. Следовательно не пригоден для использования.

Последний раз редактировалось ES6privates, 19.07.2016 в 07:27.
Ответить с цитированием
  #4 (permalink)  
Старый 19.07.2016, 07:48
Интересующийся
Посмотреть профиль Найти все сообщения от ES6privates
 
Регистрация: 18.07.2016
Сообщений: 25

Erolast, вот, создал еще два тикета
рас https://github.com/tc39/proposal-pri...elds/issues/34
двас https://github.com/tc39/proposal-pri...elds/issues/35
Ответить с цитированием
  #5 (permalink)  
Старый 19.07.2016, 07:52
Аватар для Erolast
Профессор
Отправить личное сообщение для Erolast Посмотреть профиль Найти все сообщения от Erolast
 
Регистрация: 24.09.2013
Сообщений: 1,436

Цитата:
паттерн о котором ни кто не знает
Я знал.

Цитата:
Я выебонами ЗАЩИТИЛ свою репутацию от минусов
Какую еще репутацию? Нет у тебя никакой репутации. В положительном смысле, по крайней мере.

Цитата:
дкоазал что я гений
Кому доказал лол?

Цитата:
Я - изменился.
Ничуть. Все так же никого не уважаешь и считаешь себя самым умным.

Цитата:
я АДЕКВАТНО отреагировал
Нет, не адекватно.

Цитата:
Я ваще красавчик и вообще все правильно сделал и делаю.
Не нарывайся на пошлый ответ. Ну ты понял)

Цитата:
И которй Я, пытаюсь популяризировать и добавить к нему сахар.
Видимо, тщетно пытаешься, раз тебя все минусуют.
Вон на гитхабе пацаны тоже пытаюся, и их плюсуют почему-то. Не знаешь, почему?

Цитата:
Я видел только одного человека который в 2015 году
Ну, с ходу, статья из 2014 - http://2ality.com/2014/12/es6-symbol...l_propertie s.
Если покопаться в обсуждениях пропосала символов, уверен, можно найти еще более ранние предложения.
Или ты считаешь, что автор из твоего ломаного английского идею почерпнул?

Цитата:
this.#prop годный кстати сахар
Да неужели тебе хоть что-то понравилось.
Ответить с цитированием
  #6 (permalink)  
Старый 19.07.2016, 08:19
Интересующийся
Посмотреть профиль Найти все сообщения от ES6privates
 
Регистрация: 18.07.2016
Сообщений: 25

Сообщение от Erolast
Все так же никого не уважаешь и считаешь себя самым умным.
Всех уважаю, только если взаимно, и да, считаю себя одним из самых умнейших. Я думал ты говорил про оскорбления, типа я людей оскорбляю и не изменился и не перестал оскорблять. А то что я крайне умный человек это то зачем менять? Я и считаю так и являюсь им, лол).

Сообщение от Erolast
Да неужели тебе хоть что-то понравилось.
Ну не особо то и понравилось, я вон фикс предложил сразу) точка то тут избыточна, нужно либо точку либо решетку, для публичных аксессор точка, для приватных аксессор решетка:

The algorithm is:
1) The brain see this keyword
2) Brain understand that we now address to the context
3) If after this located dot, the brain realizes that we access to public property.
4) If after this located sharp, the brain realizes that we access to private property.

Сообщение от Erolast
Не знаешь, почему?
Их плюсуют потому что они не пишут в тикеты кофескрипта) в кофескрипте всех минусуют за такое и говорят что баян и сразу закрывают любые тикеты с упоминанием ES6 или слова privates )). В других обсуждениях меня тоже плюсуют, только вот вчера заминусовали какие то аутисты которые ДАЖЕ НЕ ПОНЯЛИ сути моего решения, они нубы и про символы то ничео не знают по этому и минусовали =) если обсужать среди знающих людей то всегда норм будет.

Последний раз редактировалось ES6privates, 19.07.2016 в 08:22.
Ответить с цитированием
  #7 (permalink)  
Старый 19.07.2016, 08:24
Интересующийся
Посмотреть профиль Найти все сообщения от ES6privates
 
Регистрация: 18.07.2016
Сообщений: 25

Кстати я хот лоадер для вебпака сделал для юишки https://www.npmjs.com/package/ui-js-loader
а так же скоро туда добавлю прекомпиляцию шаблонов и стилей как в React. но эт так, оффтоп небольшой =) хвастаюсь прост. Самое сложное было сделать эмуляцию шадоу дом и шадоу стилей как в ангуляре втором, вот это да. Но даже они не смогли сделать чтобы директива итерации *for итерировала что либо, что попадает с <content></content> то оно там не итерировалось, а у меня ИТЕРИРУЕТСЯ) и более того работает даже <content selector=''></content>

Последний раз редактировалось ES6privates, 19.07.2016 в 08:29.
Ответить с цитированием
  #8 (permalink)  
Старый 19.07.2016, 11:07
Интересующийся
Посмотреть профиль Найти все сообщения от ES6privates
 
Регистрация: 18.07.2016
Сообщений: 25

Голдите че может мой фреймворк https://www.youtube.com/watch?v=tmKMAfzR8Ow

И НЕ МОЖЕТ Angular 2 https://github.com/angular/angular/issues/10155
Ответить с цитированием
  #9 (permalink)  
Старый 20.07.2016, 03:10
Интересующийся
Посмотреть профиль Найти все сообщения от ES6privates
 
Регистрация: 18.07.2016
Сообщений: 25

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

Ответить с цитированием
  #10 (permalink)  
Старый 22.07.2016, 12:33
Интересующийся
Посмотреть профиль Найти все сообщения от ES6privates
 
Регистрация: 18.07.2016
Сообщений: 25

Выбираем значок приватного аксессора))


Последний раз редактировалось ES6privates, 22.07.2016 в 12:54.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как к объектам полученными jquery применить стандартные методы javascript? klauddl jQuery 4 14.09.2011 09:26
Не работают методы и свойства MixedCollection Tie ExtJS 3 23.12.2010 13:31
Последние книги по JavaScript! monolithed Учебные материалы 7 26.10.2010 19:40
Выдвет ошибку JavaScript Ромио Opera, Safari и др. 4 21.10.2010 20:34
Как различить методы и свойства? возжаждавший Элементы интерфейса 59 12.04.2010 08:33