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 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>
|