Saturday, November 17, 2018

JavaScript Const

ECMAScript 2015

ES2015 intoduced two important new JavaScript keywords: let and const.
Variables defined with const behave like let variables, except they cannot be reassigned:

Example:

const PI = 3.141592653589793;
PI = 3.14;      // This will give an errorPI = PI + 10;   // This will also give an error

Block Scope

Declaring a variable with const is similar to let when it comes to Block Scope.
The x declared in the block, in this example, is not the same as the x declared outside the block:

var x = 10;
// Here x is 10
    const x = 2;
    // Here x is 2}
// Here x is 10

Assigned when Declared

JavaScript const variables must be assigned a value when they are declared:

const PI;
PI = 3.14159265359;

Correct


const PI = 3.14159265359;

Not Real Constants

The keyword const is a little misleading.
It does NOT define a constant value. It defines a constant reference to a value.
Because of this, we cannot change constant primitive values, but we can change the properties of constant objects.

Primitive Values

If we assign a primitive value to a constant, we cannot change the primitive value:

const PI = 3.141592653589793;
PI = 3.14;      // This will give an errorPI = PI + 10;   // This will also give an error

Constant Objects can Change

You can change the properties of a constant object:

// You can create a const object:const car = {type:"Fiat", model:"500", color:"white"};

// You can change a property:car.color = "red";

// You can add a property:car.owner = "Johnson";

But you can NOT reassign a constant object:

Example:

const car = {type:"Fiat", model:"500", color:"white"};
car = {type:"Volvo", model:"EX60", color:"red"};    // ERROR

Constant Arrays can Change

You can change the elements of a constant array:

// You can create a constant array:const cars = ["Saab""Volvo""BMW"];

// You can change an element:cars[0] = "Toyota";

// You can add an element:cars.push("Audi");

But you can NOT reassign a constant array:

const cars = ["Saab""Volvo""BMW"];
cars = ["Toyota""Volvo""Audi"];    // ERROR

Redeclaring

Redeclaring a JavaScript var variable is allowed anywhere in a program:

var x = 2;    //  Allowedvar x = 3;    //  Allowedx = 4;        //  Allowed




Share:

Related Posts:

0 comments:

Post a Comment

Contact Form

Name

Email *

Message *

Popular Posts

Blog Archive

Blog Archive

Hassan.mosmer1@gmail.com