What is Hoisting in JavaScript?
Hoisting means JavaScript will move declarations to the top of every scope. It is often an unknown aspect of JavaScript so to avoid introducing bugs, itβs always a good idea to declare all variables at the top of every scope. It simply means you can use a variable before it has been declared. Take a look at the following example:
Copied to clipboard! Playground
// Initializations are not hoisted, therefore
// This will log out undefined
console.log(x);
var x = 5;
// Declarations are hoisted, therefore
// This will log out 5
console.log(y);
var y;
y = 5;
Itβs important to mention that only variables declared with var
are hoisted, let
and const
declarations are immune. Because of this, it is recommended to always use let
or const
.
Resources:
π More Webtips
Master the Art of Frontend
- Access 100+ interactive lessons
- Unlimited access to hundreds of tutorials
- Prepare for technical interviews