全域環境和全域物件
全域環境
Published in
2 min readOct 31, 2018
我們已經知道,不論何時執行 JavaScript 程式,他都是在執行環境 (Execution Context) 裡面執行。所以當我們打開一個空白的 JavaScript 程式時,畫面上是空白的沒有錯,但現在我們看到的是他背後的整個執行環境被建立和執行。
而這一個基礎的執行環境 (Base execution context) 或稱為全域執行環境 (Global execution context),是程式一開始執行時的最初的環境,當我們稱它為全域 (Global) 時,表示我們可以在任何地方取用他。
全域執行環境在一開始就創造了兩個東西:Global Object 和 this 變數。
全域物件
所以,在瀏覽器中,全域物件就是 Window 物件。全域執行環境一開始就創造了出來了。而且可以被視窗內的任何程式取用。
全域 ( Global ) :當你的程式碼或變數不在函數裡時,就是全域的。
在 JavaScript 裡,當你不是在函數裡創造變數和函數時,那些變數和函數會(attached)隸屬於全域物件。我們舉個例子:
var a = 'hello'
變數 a 是一個全域變數,他不是在函數裡被創造,此時變數 a 會 (attached)隸屬於全域物件,也就是 Window 。此時 console.log(a)
會等同於 console.log(window.a)
。
整理這一系列文章的目的最主要是幫助自己能更深入了解 JavaScript 掌握核心概念。文章內容皆源自於 JavaScript 全攻略:克服 JS 的奇怪部分 此一線上課程。若內容有錯誤敬請不吝指正。