ES2015 (ES6) introduced the const keyword to define a new variable. The difference in const variable declaration to others is that it cannot be re-assigned.
Properties:
- Cannot be reassigned.
- It’s Block Scope
- It can be assigned to the variable on the declaration line.
- It’s a Primitive value.
- The property of a const object can be changed but it cannot be changed to a reference to the new object
- The values inside the const array can be changed, it can add new items to const arrays but it cannot reference a new array.
- Re-declaring of a const variable inside different block scopes is allowed.
- Cannot be Hoisted.
- Creates only read-only references to value.
Syntax:
const const_name;
const x;
Example 1: It describes that the const variable cannot be reassigned.
javascript
const x = 12;
x = 13;
x += 1;
|
Output:
Uncaught TypeError: Assignment to constant variable.
Example 2: It describes the const variable which contains the Block Scope.
javascript
const x = 22;
{
const x = 90;
console.log(x);
{
const x = 77;
console.log(x);
}
{
const x = 45;
console.log(x);
}
}
console.log(x);
|
Output:
90
77
45
22
Example 3: It describes the const variable and assigned it after declaration.
Output:
Uncaught SyntaxError: Missing initializer in const declaration
Example 4: It describes the const variable cannot be Hoisted.
javascript
x = 3;
console.log(x);
const x;
|
Output:
Uncaught SyntaxError: Missing initializer in const declaration
Example 5: It describes that the array values can be modified only reference to the array cannot be changed.
javascript
const arr1 = [ "pankaj" , "sumit" , "chandan" , "ajay" ];
console.log(arr1.toString());
arr1[2] = "Narayan" ;
console.log(arr1.toString());
|
Output:
pankaj, sumit, chandan, ajay
pankaj, sumit, Narayan, ajay
Example 6: It describes that the object properties can be modified only reference to the object cannot be changed.
javascript
const person = {
first_name: "Pankaj" ,
last_name: "Singh" ,
Age: 20,
About: "Web Developer and Competitive Programmer"
};
console.log(person);
person.first_name = "Aryan" ;
person.last_name = "Yadav" ;
person.Age = 22;
person.About = "Commerce undergraduate" ;
console.log(person);
|
Output:
{
first_name: 'Pankaj',
last_name: 'Singh',
Age: 20,
About: 'Web Developer and Competitive Programmer'
}
{
first_name: 'Aryan',
last_name: 'Yadav',
Age: 22,
About: 'Commerce undergraduate'
}
Supported Browsers:
- chrome 21 and above
- Edge 12 and above
- Firefox 36 and above
- Internet Explorer 11 and above
- Opera 9 and above
- Safari 5.1 and above
P.S: To clear your concept of var, const, and let please go through How to declare variables in different ways in JavaScript?