JavaScript:what is the difference let and var keyword

In this tutorial, we will learn about the difference between let and var keywords in JavaScript.

In JavaScript var and let keywords are used to declare variables.

Note: In JavaScript, we can’t access the variables before declaration because the variables are hoisted in JavaScript.

Let Keyword

  • let keyword allows to make variables block scoped it means we can only access the variables inside the block statements.
  • let keyword gives us an error if we try to use the variable before the declaration.
  • we can reassign new values to the variables.

examples:

// We can't access the variable before a declaration

console.log(boy) //Uncaught ReferenceError: boy is not defined

let boy = "👦";

console.log(boy) // "👦"

// Block scoped
if(true){
    let cooking = "🍳";
}

//we can't access the variable cooking outside the block scope

console.log(cooking) //ReferenceError: cooking is not defined

Var keyword

  • var keyword is not block scoped.
  • var keyword doesn’t give us any error if we try to use a variable before the declaration.
  • we can reassign new values to the variables.
// We can access the variable before a declaration
// but we can't get any error

console.log(boy) //undefined

var boy = "👦";

console.log(boy) // "👦"

// Block scoped
if(true){
    var cooking = "🍳";
}

//we can access the variable cooking outside the block.

console.log(cooking) // "🍳"