函數(function)/ 環境(context)/ 變數環境(variable environment)
變數環境 (variable environment)
Where the variable variables live
And how they relate to each other in memory
描述你創造變數的位置,還有它在記憶體中和其它變數的關係。
scope: 我們可以在哪裡看到變數。
這裡的每個變數 myVar 都被定義在自己的執行環境,因為它們在函數裡面,每當呼叫函數,就會得到這函數自己的執行環境。
因為變數所處的環境不同,所以雖然 myVar 被宣告3次,但它們是不同的、不一樣的,彼此沒有關聯。
隨意的註記:
一開始創造階段a已經被預設為undefined:____a在b執行前被賦值:function b(){
console.log(a)} // a = 5
var a=5
b();
console.log(a)// a = 5
_____a在b執行後被賦值:function b(){
console.log(a) //a= undefined,參考外部環境尚未被賦值的a
}
b();var a=5
console.log(a)// a = 5