最終更新:2022-04-21 (木) 18:01:43 (735d)  

JavaScript/グローバルオブジェクト
Top / JavaScript / グローバルオブジェクト

https://developer.mozilla.org/ja/docs/Glossary/Global_object

概要

  • JavaScriptではグローバルオブジェクトが常に定義されています。
  • ウェブブラウザ上でスクリプトがグローバル変数を生成する時、グローバルオブジェクトのメンバーとして作成されます。

メモ

  • グローバルスコープで使える値や関数等はグローバルオブジェクトのプロパティ

メモ

  • 最近では、すべての環境でサポートされるべきグローバルオブジェクトの標準的な名前としてglobalThis?が言語に追加されました。
  • すべての主要なブラウザでサポートされています。

場合分け

クライアントサイドJavaScript

ウェブブラウザ

  • 明示的にバックグランドタスクとして起動されるコードを除き、 Window がグローバルオブジェクトになります。ウェブにおける JavaScript コードのほとんどはこのケースに該当します。
  • Web ブラウザでは、バックグランドタスクとして起動されるものを除き、グローバルオブジェクトはwindowオブジェクト

Worker内

  • Worker?内で実行されるコードはWorkerGlobalScope?オブジェクトがグローバルオブジェクト

サーバサイドJavaScript

Node.js

  • Node.jsで実行されるスクリプトの場合、globalと呼ばれるオブジェクトがグローバルオブジェクト

JavaScript/グローバル変数

  • グローバル変数は実際にはグローバルオブジェクトのプロパティ
  • ウェブページではグローバルオブジェクトはwindow
    • window.variable という構文を使うことでグローバル変数をセットしたり、グローバル変数にアクセスしたりすることができる。