What are the differences between variables created using let, var or const ?
概述
JavaScript 中有三種宣告變數的關鍵字:var
、let
和 const
。雖然它們都用於宣告變數,但在作用域、初始化、重複宣告、重新賦值和訪問時機等方面有所不同。
主要差異
行為 | var | let | const |
---|---|---|---|
作用域 | 函式作用域或全域 | 區塊作用域 | 區塊作用域 |
初始化 | 可選 | 可選 | 必須 |
重複宣告 | 允許 | 不允許 | 不允許 |
重新賦值 | 允許 | 允許 | 不允許 |
宣告前訪問 | 返回 undefined | 拋出 ReferenceError | 拋出 ReferenceError |