javascript let

javascript let

javascript let

JavaScript有兩個範圍:全域與區域。

  • 全域變數:在函式作用域(function scope)之外宣告的變數,全域變數在整個程式中都可以被存取與修改。
  • 區域變數:在函式作用域(function scope)內宣告,每次執行函式時,就會建立區域變數再予以摧毀,而且函式之外的所有程式碼都不能存取這個變數。
var
Declares a variable, optionally initializing it to a value.
 let
Declares a block scope local variable, optionally initializing it to a value.
var a = 1;
var b = 2;

if (a === 1) {
  var a = 11; // the scope is global
  let b = 22; // the scope is inside the if-block

  console.log(a);  // 11
  console.log(b);  // 22
} 

console.log(a); // 11
console.log(b); // 2
  • (1) 同一個Scope不能重複 let 宣告相同變數
  • (2) 在最外層(Top level , Global) 不能用 let 宣告

參考網址: anim 、 iware