ES6 let and const
Information drawn from
There are two ways for declaring a variable (let and const) plus one that has become obsolete (var).
let
let declares and optionally initializes a variable in the current scope. The current scope can be either a module, a function or a block. The value of a variable that is not initialized is undefined. Scope defines the lifetime and visibility of a variable. Variables are not visible outside the scope in which they are declared. Consider the next code that emphasizes let block scope:
let x = 1;
{
let x = 2;
}
console.log(x); //1
In contrast, the var declaration had no block scope:
var x = 1;
{
var x = 2;
}
console.log(x); //2
const
const declares a variable that cannot be reassigned. It becomes a constant only when the assigned value is immutable. An immutable value is a value that, once created, cannot be changed.
Primitive values are immutable, objects are mutable.
const
freezes the variable, Object.freeze()
freezes the object.
The initialization of the const
variable is mandatory.
------------------------------------------------------------------------
Last update on 20 Apr 2020
---