1. 程式人生 > >js作用域

js作用域

實例對象 exec execution 擁有 第三版 表示 標準 註銷 通過

每個JavaScript函數都表示一個對象, 確切的為一個Function的實例對象。Function對象跟其他對象一樣,擁有可以編程訪問的對象,和不可以通過代碼訪問的僅供JavaScript引擎存取的內部屬性。其一為[[Scope]], 由ECMA-262標準第三版定義。

作用域鏈: 內部屬性[[Scope]]包含了一個函數被創建的作用域中對象的集合。 它決定哪些數據能被函數訪問。

函數作用域中的每個對象被稱為一個可變對象,每個可變對象都以‘鍵值對‘的形式存在。

當一個函數創建後, 他的作用域鏈會被創建此函數的作用域中可訪問的數據對象所填充。

執行函數時會創建一個稱為執行環境(execution context)的內部對象。 函數每次執行時對應的執行環境都是獨一無二的, 所以多次執行同一個函數, 也會創建多個執行環境。 當函數執行完畢, 執行環境就會註銷。

js作用域