--- title: Global object (グローバルオブジェクト) slug: Glossary/Global_object tags: - CodingScripting - Glossary - NeedsContent - 用語集 translation_of: Glossary/Global_object ---
グローバルオブジェクトは、{{glossary("global scope", "グローバルスコープ")}}上に常時存在する{{glossary("object", "オブジェクト")}}です。
JavaScript では、グローバルオブジェクトが常に定義されています。ウェブブラウザー上でスクリプトがグローバル変数を生成する時、グローバルオブジェクトのメンバーとして作成されます。 ({{Glossary("Node.js")}} ではこの限りではありません。) グローバルオブジェクトが実装する{{Glossary("interface", "インターフェイス")}}は、どのようなコンテキストでスクリプトが実行されているかによって変化します。例えば、
global
と呼ばれるオブジェクトがグローバルオブジェクトになります。window
オブジェクトブラウザー内では window
オブジェクトがグローバルオブジェクトです。グローバル変数や関数はすべて、 window
オブジェクトのプロパティとしてアクセスすることができます。
var foo = "foobar"; foo === window.foo; // true を返す
グローバル変数 foo
を定義した後、その値を window
オブジェクトから、変数名である foo
を使用し、グローバルオブジェクト window
.foo
のプロパティ名として直接アクセスすることができます。
グローバル変数 foo
は window
オブジェクト内に、次のように格納されます。
foo: "foobar"
function greeting() { console.log("Hi!"); } window.greeting(); // ふつうに greeting(); を呼び出すのと同じ
上記の例では、グローバル関数が window
オブジェクトの中にプロパティとしてどのように格納されるかを説明しています。 greeting
というグローバル関数を作成し、 window
オブジェクトを使用して呼び出します。
グローバル関数 greeting
は window
オブジェクトに次のように格納されています。
greeting: function greeting() { console.log("Hi!"); }