diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..ab1f416 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,10 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Ignored default folder with query files +/queries/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml +# Editor-based HTTP Client requests +/httpRequests/ diff --git a/.idea/article-markup.iml b/.idea/article-markup.iml new file mode 100644 index 0000000..c956989 --- /dev/null +++ b/.idea/article-markup.iml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..8563461 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/index.html b/index.html index 5e60e40..08560b8 100644 --- a/index.html +++ b/index.html @@ -6,6 +6,51 @@ - +
+ + +
+ + +
+

Замыкания в JavaScript для начинающих

+

Замыкания — это одна из фундаментальных концепций JavaScript, вызывающая сложности у многих новичков, зн + понимать которую должен каждый JS-программист. Хорошо разобравшись с замыканиями, вы сможете писать бо + качественный, эффективный и чистый код. А это, в свою очередь, будет способствовать вашему профессиона + росту. +

+
+

Что такое замыкание?

+

Замыкание — это функция, у которой есть доступ к области видимости, сформированной внешней по отноше + функции даже после того, как эта внешняя функция завершила работу. Это значит, что в замыкании могут хр + переменные, объявленные во внешней функции и переданные ей аргументы. Прежде чем мы перейдём, собствен + замыканиям, разберёмся с понятием «лексическое окружение». +

+
+
+

Что такое лексическое окружение?

+

Понятие «лексическое окружение» или «статическое окружение» в JavaScript относится к возможности доступа + переменным, функциям и объектам на основе их физического расположения в исходном коде. Рассмотрим при +

+ +

Здесь у функции inner() есть доступ к переменным, объявленным в её собственной области видимости, в + видимости функции outer() и в глобальной области видимости. Функция outer() имеет доступ к пере + объявленным в её собственной области видимости и в глобальной области видимости. + Цепочка областей видимости вышеприведённого кода будет выглядеть так: +

+ +

Обратите внимание на то, что функция inner() окружена лексическим окружением функции outer(), к + очередь, окружена глобальной областью видимости. Именно поэтому функция inner() может получить до + переменным, объявленным в функции outer() и в глобальной области видимости.

+
+
\ No newline at end of file diff --git a/styles.css b/styles.css index 1cbd2e0..1f6d657 100644 --- a/styles.css +++ b/styles.css @@ -1,8 +1,134 @@ -/* Тут пиши основные стили */ +h1, h2 h3, h3 h4, h5, h6 { + font-family: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Geneva, Arial, sans-serif; + font-size: 42px; + color: rgba(0, 0, 0, 0.84); + text-align: left; + line-height: 44px; + margin: 10px; +} + +p { + font-family: Georgia, Cambria, "Times New Roman", Times, serif +} + +code { + font-family: "Courier New", monospace; +} + +.head { + ul { + display: flex; + flex-direction: row; + list-style: none; + padding: 20px 38px; + background-color: whitesmoke; + border: solid #333333; + border-right-width: 0px; + border-left-width: 0px; + gap: 30px; + } + + li a { + color: #333333; + font-family: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Geneva, Arial, sans-serif; + line-height: 36px; + font-size: 24px; + } + + li .red_text { + color: #d0021b; + } +} + +li a:hover { + text-decoration: underline; +} + +article { + max-width: 700px; + margin: auto; + +} + + +code { + font-family: "Courier New", monospace; +} + +p { + font-family: Georgia, Cambria, "Times New Roman", Times, serif; + font-size: 21px; + color: rgba(0, 0, 0, 0.84); + text-align: left; + line-height: 33px; + margin: 10px; +} + +section { + margin-bottom: 55px; + margin-top: 0; +} + +section > h2 { + margin-top: 55px; + margin-bottom: 10px; +} + +.logo { + width: 101px; + height: 64px; +} + +img { + max-width: 700px; + width: 100%; + height: auto; +} + +section img { + margin-top: 43px; + margin-bottom: 37px; +} + +.hand { + width: 23px; + height: auto; + margin-left: -30px; + margin-bottom: -20px; +} @media (max-width: 800px) { -/* Тут пиши стили для мобилки. - Стили применятся только когда страничка будет ≤800px шириной - */ + .logo { + margin-left: 20px; + } + + nav ul { + flex-direction: column; + padding-left: 20px; + } + + nav ul li { + padding: 0px; + margin: 5px 0px 5px 0px; + font-size: 20px; + } + + .content { + width: 90%; + } + + img { + width: 100%; + } + + p { + font-size: 18px; + line-height: 22px; + } + + h1 { + font-size: 26px; + line-height: 28px; + } } \ No newline at end of file