aboutsummaryrefslogtreecommitdiff
path: root/files/ru/glossary/global_object/index.html
blob: 62b03c66abec657bcf3e6a884d5f9515b32162e9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
---
title: Global object
slug: Glossary/Global_object
translation_of: Glossary/Global_object
original_slug: Словарь/Global_object
---
<p>Глобальный обьект - это {{glossary("object")}}, который всегда существует в {{glossary("global scope")}}.</p>

<p>В JavaScript всегда определён глобальный обьект. В веб-браузере, когда скрипты создают глобальные переменные, они создаются как свойства глобального обьекта. (В {{Glossary("Node.js")}} это не так.) {{Glossary("Interface")}} глобального обьекта зависит от контекста, в котором выполняется скрипт.К примеру:</p>

<ul>
 <li>В веб-браузере любой код, который не запускается скриптом явно как фоновую задачу, имеет {{domxref("Window")}} в качестве своего глобального обьекта. Это покрывает большую часть JavaScript кода в сети.</li>
 <li>Код, работающий в {{domxref("Worker")}} имеет {{domxref("WorkerGlobalScope")}} обьект в качестве своего глобального обьекта.</li>
 <li>Скрипты, работающие в {{Glossary("Node.js")}} имеют обьект, который называется <code><a href="https://nodejs.org/api/globals.html#globals_global">global</a></code> в качестве своего глобального обьекта.</li>
</ul>

<h2 id="Обьект_window_в_Браузере">Обьект <code>window</code> в Браузере</h2>

<p>Обьект <code>window</code> - Глобальный Обьект в браузере. Доступ к любым Глобальным Переменным или функциям может быть получен как к <em>свойствам</em> обьекта <code>window</code>.</p>

<h3 id="Получение_доступа_к_Глобальным_Переменным">Получение доступа к Глобальным Переменным</h3>

<pre class="brush: js">var foo = "foobar";
foo === window.foo; // Возвращает: true
</pre>

<p>После определения Глобальной Переменной <code>foo</code>, мы можем получить доступ к его значению прямо с обьекта <code>window</code>, использую имя переменной <code>foo</code> в качестве имени свойства Глобального Обьекта <code>window</code><code>.foo</code>.</p>

<h4 id="Обьяснение">Обьяснение:</h4>

<p>Глобальная Переменная <code>foo</code> была сохранена в обьекте <code>window</code>, подобно следующему примеру:</p>

<pre class="brush: js">foo: "foobar"</pre>

<h3 id="Получение_доступа_к_Глобальным_Функциям">Получение доступа к Глобальным Функциям</h3>

<pre class="brush: js">function greeting() {
   console.log("Hi!");
}

window.greeting(); // Тоже самое что и обычный вызов: greeting();
</pre>

<p>Пример выше показывает как Глобальные Функции хранятся в качестве свойств обьекта <code>window</code>. Мы создали Глобальную Функцию <code>greeting<font face="Arial, x-locale-body, sans-serif"><span style="background-color: #ffffff;"> и вызвали её с помощью обьекта </span></font></code><code>window</code>.</p>

<h4 id="Обьяснение_2">Обьяснение:</h4>

<p>Глобальная функция <code>greeting</code> была сохранена в обьекте <code>window</code>, подобно следующему примеру:</p>

<pre class="brush: js">greeting: function greeting() {
   console.log("Hi!");
}</pre>

<section class="Quick_links" id="Quick_Links">
<ul>
 <li><a href="/en-US/docs/Glossary">MDN Web Docs Glossary</a>

  <ul>
   <li>{{glossary("global scope")}}</li>
   <li>{{glossary("object")}}</li>
  </ul>
 </li>
 <li>{{domxref("Window")}}</li>
 <li>{{domxref("WorkerGlobalScope")}}</li>
 <li><code><a href="https://nodejs.org/api/globals.html#globals_global">global</a></code></li>
</ul>
</section>