JavaScript 變數作用域 Variable Scope

變數的作用域(Scope)

作用域是指變數的有效範圍。

常聽到的全域變數(global variable)通常是指:全域變數是不在任何function(){}內的變數,換句話說,全域變數是在任何地方都可以用的變數。

全域變數相反,function(){}內的變數稱為區域變數(local variable)

繼續閱讀

JavaScript 變數提升 Variable Hoisting

變數的提升(Hoisting)

在其他程式語言裡面,程式碼是逐步執行的,所以「把要做的事情放在宣告之前」,就會出錯。

但在 JavaScript 並不會出錯,因為執行程式碼之前,會先把宣告的函式或變數放到記憶體中,直到程式執行的時候,函式或變數就已經存在了。(感覺像是宣告的東西被提升到要做的事情之前,但實際不是)

要做的事情放在宣告之前,仍然可以繼續執行的現象叫做提升(Hoisting)

繼續閱讀