SyntaxError: missing = in const declaration

當 const 宣告在同一語句中沒有被賦予值時(例如 const RED_FLAG;),就會出現 JavaScript 異常 "const 宣告缺少 ="。你需要提供一個值(const RED_FLAG = true)。

訊息

SyntaxError: Missing initializer in const declaration (V8-based)
SyntaxError: missing = in const declaration (Firefox)
SyntaxError: Unexpected token ';'. const declared variable 'x' must have an initializer. (Safari)

錯誤型別

SyntaxError

哪裡出錯了?

常量是一個在程式正常執行期間不能被程式修改的值。它不能透過重新賦值來改變,也不能被重新宣告。在 JavaScript 中,常量使用 const 關鍵字宣告。常量需要一個初始化器;也就是說,你必須在宣告它的同一語句中指定它的值(這很有道理,因為它以後不能被改變)。

示例

缺少 const 初始化器

varlet 不同,你必須為 const 宣告指定一個值。這會丟擲

js
const COLUMNS;
// SyntaxError: missing = in const declaration

修復錯誤

有多種方法可以修復此錯誤。檢查此常量旨在實現什麼。

新增常量值

在宣告常量的同一語句中指定常量值

js
const COLUMNS = 80;

constlet 還是 var

如果你不打算宣告一個常量,請不要使用 const。也許你打算使用 let 宣告一個塊級作用域變數,或者使用 var 宣告一個全域性變數。兩者都不需要初始值。

js
let columns;

另見