JavaScript 可以用三種關鍵字來定義變數:var
, const
和 let
。它們之間的差別在於可變性以及與字?環境的關係。
以const
定義的變數,在定義時就要給一個值,而且之後不能再指派新的值,如果被指派的是物件或陣列的話,則可以更改裡面的項目。var 和 let 二者在這方面的用法一樣。
const firstConst = "foo";
firstConst = "bar";
// error
const secondConst = {};
secondConst.item = "foo";
console.log(secondConst.item); // "foo"
const thirdConst = [];
console.log(thirdConst.length); // 0
thirdConst.push("foo");
console.log(thirdConst.length); // 1
使用 var
當關鍵字建立變數時,變數是定義在最鄰近的函式或全域字?環境中。
使用 const
和 let
來定義變數的話,變數則是定義在最鄰近的字?環境中。