0% found this document useful (0 votes)
54 views11 pages

JS Const

Uploaded by

Prakash Paudel
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
54 views11 pages

JS Const

Uploaded by

Prakash Paudel
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

11/10/2024, 13:08 JavaScript const

 Tutorials  Exercises  Services   Sign Up Log in

HTML
 CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO [Link] C

JavaScript Const
❮ Previous Next ❯

The const keyword was introduced in ES6 (2015)

Variables defined with const cannot be Redeclared

Variables defined with const cannot be Reassigned

Variables defined with const have Block Scope

Cannot be Reassigned
A variable defined with the const keyword cannot be reassigned:

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

Try it Yourself »

[Link] 1/11
11/10/2024, 13:08 JavaScript const

MustTutorials
 be Assigned
Exercises  Services   Sign Up Log in

HTML CSS const


JavaScript JAVASCRIPT SQLbe assigned
variables must PYTHON a value
JAVAwhenPHP HOW
they are TO
declared: [Link] C

Correct

const PI = 3.14159265359;

Incorrect

const PI;
PI = 3.14159265359;

When to use JavaScript const?


Always declare a variable with const when you know that the value should not
be changed.

Use const when you declare:

A new Array
A new Object
A new Function
A new RegExp

Constant Objects and Arrays


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 you can NOT:


[Link] 2/11
11/10/2024, 13:08 JavaScript const

Reassign a constant value


 Tutorialsaconstant
Reassign Exercises
array Services   Sign Up Log in
Reassign a constant object
HTML
 CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO [Link] C
But you CAN:

Change the elements of constant array


Change the properties of constant object

Constant Arrays
You can change the elements of a constant array:

Example

// You can create a constant array:


const cars = ["Saab", "Volvo", "BMW"];

// You can change an element:


cars[0] = "Toyota";

// You can add an element:


[Link]("Audi");

Try it Yourself »

But you can NOT reassign the array:

Example
const cars = ["Saab", "Volvo", "BMW"];

cars = ["Toyota", "Volvo", "Audi"]; // ERROR

Try it Yourself »

[Link] 3/11
11/10/2024, 13:08 JavaScript const

 Tutorials  Exercises  Services   Sign Up Log in


Constant Objects
HTML
 CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO [Link] C
You can change the properties of a constant object:

Example

// You can create a const object:


const car = {type:"Fiat", model:"500", color:"white"};

// You can change a property:


[Link] = "red";

// You can add a property:


[Link] = "Johnson";

Try it Yourself »

But you can NOT reassign the object:

Example
const car = {type:"Fiat", model:"500", color:"white"};

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

Try it Yourself »

Difference Between var, let and const


Scope Redeclare Reassign Hoisted Binds this

var No Yes Yes Yes Yes

[Link] 4/11
11/10/2024, 13:08 JavaScript const

let Yes
Tutorials 
No
Exercises  Services Yes
  No No
Sign Up Log in
const Yes No No No No
HTML
 CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO [Link] C

What is Good?
let and const have block scope.

let and const can not be redeclared.

let and const must be declared before use.

let and const does not bind to this .

let and const are not hoisted.

What is Not Good?


var does not have to be declared.

var is hoisted.

var binds to this.

Browser Support
The let and const keywords are not supported in Internet Explorer 11 or earlier.

The following table defines the first browser versions with full support:

Chrome 49 Edge 12 Firefox 36 Safari 11 Opera 36

Mar, 2016 Jul, 2015 Jan, 2015 Sep, 2017 Mar, 2016

[Link] 5/11
11/10/2024, 13:08 JavaScript const

Block
 Scope
Tutorials  Exercises  Services   Sign Up Log in

HTML CSSa variable


Declaring JAVASCRIPT SQL
with const PYTHON
is similar to let JAVA PHP
when it comes toHOW TO Scope.
Block [Link] C

The x declared in the block, in this example, is not the same as the x declared outside
the block:

Example
const x = 10;
// Here x is 10

{
const x = 2;
// Here x is 2
}

// Here x is 10

Try it Yourself »

You can learn more about block scope in the chapter JavaScript Scope.

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

Example
var x = 2; // Allowed
var x = 3; // Allowed
x = 4; // Allowed

[Link] 6/11
11/10/2024, 13:08 JavaScript const

Redeclaring an existing var or let variable to const , in the same scope, is not
 Tutorials 
allowed:
Exercises  Services   Sign Up Log in

HTML
 CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO [Link] C

Example
var x = 2; // Allowed
const x = 2; // Not allowed

{
let x = 2; // Allowed
const x = 2; // Not allowed
}

{
const x = 2; // Allowed
const x = 2; // Not allowed
}

Reassigning an existing const variable, in the same scope, is not allowed:

Example

const x = 2; // Allowed
x = 2; // Not allowed
var x = 2; // Not allowed
let x = 2; // Not allowed
const x = 2; // Not allowed

{
const x = 2; // Allowed
x = 2; // Not allowed
var x = 2; // Not allowed
let x = 2; // Not allowed
const x = 2; // Not allowed
}

Redeclaring a variable with const , in another scope, or in another block, is allowed:


[Link] 7/11
11/10/2024, 13:08 JavaScript const

 Tutorials 
Example
Exercises  Services   Sign Up Log in

HTML
 CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO [Link] C
const x = 2; // Allowed

{
const x = 3; // Allowed
}

{
const x = 4; // Allowed
}

Hoisting
Variables defined with var are hoisted to the top and can be initialized at any time.

Meaning: You can use the variable before it is declared:

Example
This is OK:

carName = "Volvo";
var carName;

Try it Yourself »

If you want to learn more about hoisting, study the chapter JavaScript Hoisting.

Variables defined with const are also hoisted to the top, but not initialized.

Meaning: Using a const variable before it is declared will result in a ReferenceError :

Example
[Link] 8/11
11/10/2024, 13:08 JavaScript const

alert (carName);
Tutorials  Exercises 
const carName = "Volvo";
Services   Sign Up Log in

HTML
 CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO [Link] C
Try it Yourself »

❮ Previous Next ❯

W3schools Pathfinder
Track your progress - it's free! Sign Up Log in

COLOR PICKER


[Link] 9/11
11/10/2024, 13:08 JavaScript const

 Tutorials  Exercises  Services   Sign Up Log in

HTML
 CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO [Link] C

 PLUS SPACES GET CERTIFIED

FOR TEACHERS FOR BUSINESS CONTACT US

Top Tutorials Top References


HTML Tutorial HTML Reference
CSS Tutorial CSS Reference
JavaScript Tutorial JavaScript Reference
How To Tutorial SQL Reference
SQL Tutorial Python Reference
Python Tutorial [Link] Reference
[Link] Tutorial Bootstrap Reference
Bootstrap Tutorial PHP Reference
PHP Tutorial HTML Colors
Java Tutorial Java Reference
C++ Tutorial Angular Reference
jQuery Tutorial jQuery Reference

Top Examples Get Certified


HTML Examples HTML Certificate
CSS Examples CSS Certificate
JavaScript Examples JavaScript Certificate
How To Examples Front End Certificate
SQL Examples SQL Certificate
Python Examples Python Certificate
[Link] Examples PHP Certificate
Bootstrap Examples jQuery Certificate
PHP Examples Java Certificate
Java Examples C++ Certificate
XML Examples C# Certificate
jQuery Examples XML Certificate

    

FORUM ABOUT ACADEMY


W3Schools is optimized for learning and training. Examples might be simplified to
improve reading and learning.

[Link] 10/11
11/10/2024, 13:08 JavaScript const
Tutorials, references, and examples are constantly reviewed to avoid errors, but we

 cannot warrant full correctness


Tutorials  Exercises  Services   Sign Up
of all content. While using W3Schools, you agree to have read and accepted our terms of
Log in
use, cookie and privacy policy.
HTML
 CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO [Link] C
Copyright 1999-2024 by Refsnes Data. All Rights Reserved. W3Schools is Powered by
[Link].

[Link] 11/11

You might also like