變數提升

isNothing發表於2018-09-03

優先使用 const,其次是 let,對 var 說再見

var存在變數提升,你可以在函式範圍的末尾處宣告一個 var 變數,但是它仍然可以在宣告之前訪問:你將得到一個 undefined 值。

function test() {  
  // code...
  myVariable; // => undefined
  // code...
  var myVariable = 'Initial value';
}
test();  複製程式碼

而使用 let 或者 const 進行變數宣告則不會存在作用域提升的問題,因為變數在宣告之前處於一個暫時性死區,在宣告之前訪問變數會丟擲一個 ReferenceError


相關文章