【javascript】グローバルオブジェクト
制御が任意の実行コンテキストに入る前に生成される、一意的な グローバルオブジェクトが存在する。
(仕様書より)
そして
HTML 文書オブジェクトモデルにおけるグローバルオブジェクトの window プロパティは、グローバルオブジェクトそれ自身である。
(仕様書より)
というわけで、ブラウザで実行するjavascriptにおいては、よくグローバル変数って呼んでいるのは、windowオブジェクトのプロパティのこと。
だから、こういう書き方ができる。
var x = 3 alert(x) // 3 alert(window.x) // これも3 function b() { alert("bbbbb") } window.b() //ちゃんと定義されている。実行されて bbbbb という。 //ちなみにプロパティは[]で呼び出すこともできるので、これもあり alert(window["x"]) window["b"]() //これもあり window["alert"]("global function")
コメント