Understanding Hoisting: How JavaScript Handles Declarations

Example 1: Variable Hoisting with var

console.log(x); // Output: undefined
var x = 10;

Explanation:

JavaScript hoists the declaration of x to the top (var x;), but not the value.

So it’s as if you wrote:

var x;
console.log(x); // undefined
x = 10;

But let and const do NOT hoist like var

console.log(y); // ReferenceError
let y = 5;

Example 2: Function Hoisting

greet(); // Output: Hello!

function greet() {
console.log(“Hello!”);
}

Explanation:

The entire function greet() is hoisted to the top.**

Leave a Reply