JavaScriptのブラウザwindow
では、グローバルオブジェクトが使用されます。これは、グローバルスコープで定義されたすべての変数がの子であることを意味しますwindow
。では、なぜこの結果が得られるのでしょうか。
console.log(window.foo); // No error, logs "undefined".
console.log(foo); // Uncaught ReferenceError: foo is not defined.
これらの2つの線は同じである必要がありますね。