🈯const
JS ⟩ declaration ⟩ variable ⟩ const
(declaration) declares a local constant in block scope.
const
must have an initial value❗ (👉 more)
can't be reassigned❗ (👉 more)
can't be redeclared❗
⛔ ReferenceError: cannot access '...' before initialization.
caused by referencing a let/ const/ class in its temporal dead zone❗
using typeof on lexical declaration (let/ const/ class) in its temporal dead zone will throw a ReferenceError.
// ⭐ temporal dead zone (start)
// ------------------------------
typeof aLet; // ⛔ ReferenceError: Cannot access 'aLet' before initialization
typeof aConst; // ⛔ ReferenceError: Cannot access 'aConst' before initialization
typeof aClass; // ⛔ ReferenceError: Cannot access 'aClass' before initialization
typeof undeclared; // ❗ 'undefined'
// ⭐ lexical declarations (let/const/class)
// --------------------------------------------
let aLet; // ⭐ initialized to `undefined`
const aConst = "hello";
class aClass {}
replit:TDZ: let/const/class
Last updated
Was this helpful?