[Javascript] 什麼是 Hoisting ?

在 Javascript 裡面,程式在被 interpreter 做處理的時候,變數跟函式的宣告通常會隱含性的被搬到整個 scope 的最上方 (這個行為叫做 Hoisting)。

所以,當程式如下時:

Interpreter 會把它轉成:

同樣的:

會被轉成:

這樣的動作,有時候會造成一些意料之外的結果或錯誤的產生。

詳細情形,請見參考資料!

參考資料:

This entry was posted in Javascript and tagged . Bookmark the permalink.

Leave a Reply