1. 程式人生 > >JavaScript變數提升(Hoisting)的小案例

JavaScript變數提升(Hoisting)的小案例

變數提升(Hoisting)的小案例

執行以下程式碼的結果是什麼?為什麼?

答案

這段程式碼的執行結果是undefined 和 2

這個結果的原因是,變數和函式都被提升(hoisted) 到了函式體的頂部。因此,當列印變數a時,它雖存在於函式體(因為a已經被宣告),但仍然是undefined。換言之,上面的程式碼等同於下面的程式碼: