| id | let-in-javascript | |||||||
|---|---|---|---|---|---|---|---|---|
| title | Let Keyword in JavaScript | |||||||
| sidebar_label | Let Keyword | |||||||
| sidebar_position | 8 | |||||||
| tags |
|
|||||||
| description | What is the let keyword in JavaScript and how to use it. |
In JavaScript, the let keyword is used to declare a block-scoped variable. It was introduced in ECMAScript 6 (ES6) and is the preferred way to declare variables in modern JavaScript.
ES6 (ECMAScript 2015) is a major update to JavaScript that adds new syntax and features to the language. It was officially released in June 2015.
The syntax to declare a variable using the let keyword is:
let variableName = value;Here, variableName is the name of the variable and value is the value assigned to the variable.
Let's see an example to understand how to use the let keyword in JavaScript:
let name = "John";
console.log(name); // Output: JohnIn the above example, we have declared a variable name using the let keyword and assigned it a value "John". We then printed the value of the variable using console.log().
The let keyword is block-scoped, which means that the variable declared using let is only available within the block in which it is defined.
{
let x = 10;
console.log(x); // Output: 10
}
console.log(x); // Uncaught ReferenceError: x is not definedIn the above example, the variable x is only available within the block in which it is defined. If we try to access it outside the block, it will result in a ReferenceError.
The let keyword does not allow redeclaration of the same variable within the same block scope.
let x = 10;
let x = 20; // Uncaught SyntaxError: Identifier 'x' has already been declaredIn the above example, we are trying to redeclare the variable x within the same block scope, which results in a SyntaxError.
Variables declared using the let keyword are not hoisted to the top of their block. This means that you cannot access the variable before it is declared.
console.log(x); // Uncaught ReferenceError: x is not defined
let x = 10;In the above example, we are trying to access the variable x before it is declared, which results in a ReferenceError.
The let keyword differs from the var keyword in terms of block scope, redeclaration, and hoisting.
Variables declared using the var keyword are function-scoped or globally-scoped, whereas variables declared using the let keyword are block-scoped.
// var
function varExample() {
if (true) {
var x = 10;
}
console.log(x); // Output: 10
}
varExample();
// let
function letExample() {
if (true) {
let x = 10;
}
console.log(x); // Uncaught ReferenceError: x is not defined
}
letExample();In the above example, the variable x declared using the var keyword is available outside the block in which it is defined, whereas the variable x declared using the let keyword is not available outside the block.
:::info
A block is a set of statements enclosed in curly braces {}.
:::
In this article, we learned about the let keyword in JavaScript and how to use it to declare block-scoped variables. We also saw how the let keyword differs from the var keyword in terms of block scope, redeclaration, and hoisting.