全域環境 & 全域物件

CHEN
3 min readAug 22, 2019

--

Pixabay License

中英專有名詞對照:

執行環境 Execution Context

全域環境 Global Environment

全域物件 Global Object

無論何時執行 JavaScript 程式碼都包在執行環境中,當我們第一次看到JavaScript 程式,是看到執行環境被建立和執行。

基礎執行環境(Base Execution Context) =全域執行環境(Global Execution Context)

其中的「全域」是指在任何地方都取用它。

全域執行環境創造了 全域物件及 this(變數)。

Photo by Émile Perron on Unsplash

在瀏覽器當中全域物件又稱為 window 物件

在全域等級當中 window 物件= this

就算 JavaScript 檔不寫 code,打開 Chrome 的開發工具的 console 輸入 this 也會跑出資訊,因為環境已經被 JavaScript 建立;而輸入 window 也會跑出資訊,window 是這個瀏覽器的全域物件。但要是執行 node.js 就會出現別的物件了,並非一樣是 window。每個視窗都有自己的執行環境和自己的全域物件。

執行環境是全域等級被創造出來的,表示全域物件是可以在視窗內的任何程式取用。

Photo by Arnold Francisca on Unsplash

所謂的「全域」代表程式碼或變數不在 function(函數)裡面。

全域物件和 this 都是不需要程式碼就可以被創造出來的。

在 JavaScript 中,創造"變數和函數"但”變數和函數”都不在 function(函數)裡面,那麼這些”變數和函數”就會和全域物件做連結。

Ex:var a = ‘hahaha’;

打開瀏覽器開發工具的 console 輸入 a 會出現 ‘hahaha’
輸入 window.a 也會出現 ‘hahaha’

--

--

CHEN
CHEN

No responses yet