[Костыль #6] Сколько у меня яблок? Инкапсуляция на JavaScript. Защита данных в JS

Автор Maksim Inshakov
[Костыль #6] Сколько у меня яблок? Инкапсуляция на JavaScript. Защита данных в JS

всем.

Привет народ. Меня зовут сканер и сегодня мы поговорим о яблоках серьёзно. Сколько у вас яблок.

Мне кажется хоть у кого-то из вас сейчас должны быть яблоки хотя бы одно хорошо.

У меня есть одно яблоко давайте объявим — это программе. Пётр — это объект есть яблоко. Как мы можем об этом узнать. Да очень просто мы можем обратиться к. Петру и посмотреть на его свойства Crown down сказал, что у него есть одно яблоко этом случае. Пётр — это объект аккаунт — это свойства. Однако Как сделать так чтобы у нас не было доступа к этому свойству вот таким способом через точку допустим очевидный вариант объявить здесь функцию и всё больше она не делает ничего есть обратиться теперь количеству. Яблоко тоже такая проблема показать разошелся. Итак Пётр I Get crunk и он наверное ошибку потому, что он. Петра есть просто. Агент доггетт вот так то есть. Казалось бы всё круто, но если я напишу здесь. Петр Колумб чем конструктор он всё равно скажет сколько яблоко. Как открыть вот эту переменную в некоторых источниках пишут, что можно начинать на приватных периметр признаков подчёркивание молота всеобщая договоренности и так далее и. Да не все сразу догадается, что вот. Пётр есть свойство подчёркивание там ещё как может быть может быть догадаются я бы догадался, но тем не менее я не знаю, что — это за договорённость такая использовать подчеркивание как признак приватности переменной я на самом деле как-то не соблюдаю не договоренности мне в принципе пофигу я вот вот как думаю так делать. Я не призываю чувства отказаться стандарт чтобы ни в коем случае не. Придумано не просто так, но тем не менее долю креатива вы всегда можете к этому делу прикладывать джаваскрипте инкапсуляции возможно и нет, но есть неплохой способ как можно её реализовать там в описании есть ссылка под этим видео про оператора New ipro конструктор пожалуйста по ней перейдите почитайте прежде чем дальше смотри. И я надеюсь всё-таки вы посмотрели либо же знаете что-то об операторе New. Допустим мы хотим объявить здесь переменная которая будет являться экземпляром объекта. Пётр Пётр равно New sweater и — это сейчас привезёт ошибки для того чтобы — это не переводила прошивки нам нужно объект. Пётр превратить конструктор конструктор Java скрипте. Это обыкновенная функция. Вот так вот она обозначается. Вот теперь — это конструктор то есть оператор New принимает у нас только функцию которая здесь нам нужно обязательно со скобками функцию конструктор и в принципе — это всё, что вам нужно знать. Вот теперь это. Никакой ошибки не выдает и. Пётр — это у нас пустой объект в любом случае сейчас. Пётр — это такой же объект как мы описывали ранее каким-то свойствами и данными которыми хранятся методами функциями и так далее. Это аргументом перед 15. Например у меня есть тебе уже пять яблок укажем какао и очевидно я надеюсь вы прочитали и знаете, что теперь чтобы указать свойства каком значении просто аргументов или же или же 0 если ничего не передали и теперь свойства аккаунт стала свойством объекта. Пётр которая будет унаследовать этим объектом которая будет создана в WhatsApp на благодаря конструктору. Пётр Если вы в этой фразе разобрали есть то. Ставьте лайк посмотрим на структуру объекта пидором так не надо мне сейчас вот вроде как бы всё нормально. Однако целью всей болтовни является сокрытие переменной экран после этого. Давайте напишем здесь ещё в переменную Get который у вас будет являться функции. Если Вы не забыли то она возвращает из Call под окном кто-то орёт надеюсь вам не слышно и так обращаться с компьютером вот у нас есть свойство аккаунт равна 5. А здесь функция которая возвращает нам яблок. Давайте вызовем эту функцию. Пётр равно 5. Однако однако функции всё ещё можем получить доступ вот таким вот способом до этого прежнего 5 смотрите джаваскрипте сейчас вот вот. Запомни эту фразу любая переменная любая. Это ссылка на область памяти вы создадите какую-то переменную например tst01 то тест в нашем случае само по себе. Никаких данных них 330 напишу тест то — это будет конечно же единица, но тем не менее тест — это лишь. Ссылка ссылка на без памяти если я здесь напишу тест равно. Пётр то тест у нас по-прежнему будет ссылкой, но она будет уже ссылкой на объект. Пётр Пётр который в свою очередь уже ссылается на свои свойства они уже ссылаются соответственно области памяти поэтому объекта точнее внутри конструктора. Вы можете. Объявлять и простые переменные. Кременная клоун аккаунт который также равняется либо аргументы либо нулю если аргумент не было рядом переменную которая является свойства убираем растительность просто осталось переменной аккаунт которая является ссылкой на область памяти обновим попробуем пётр.. Отдыхай и всё на самом деле правильно объекта. Пётр вот этого объекта у него нет свойства аккаунт то есть мы не можем просто так обратиться и здесь свойства Get. Пётр который является функцией тоже наверное там define то есть такое переменная существует. Что нужно теперь здесь исправить просто убрать. Взвесь при создании при построении этого объекта у нас здесь завелась переменной аккаунт который ссылается на какую-то область памяти вот этот момент прямо обязательно усвоить переменной аккаунт — это область памяти при построении всех вот этих функций здесь переменной аккаунт по-прежнему ссылка на ту самую без памяти мы не можем получить ней доступ написал. Вот так вот. Пётр просто не можем. Но переменные которые здесь объявлены и в дальнейшем использовании функциях по-прежнему остается ссылками на те же самые области с памяти поэтому мы спокойно можем здесь писать. Петр дед и получать необходимые нам значение возобновить Таргет.

0 комментариев
0

Читайте также