JavaScript - var Keyword
Overview
Estimated time: 10–15 minutes
var is function-scoped and hoisted. Prefer let/const to avoid surprises.
Learning Objectives
- Understand function scope vs block scope.
- Recognize hoisting and redeclaration hazards.
Prerequisites
Function scope
function demo(){
if (true) {
var x = 1;
}
console.log(x); // 1 (function scoped)
}
Hoisting and redeclaration
console.log(a); // undefined (hoisted declaration)
var a = 10;
var a = 20; // redeclaration allowed
Recommendation
- Use
constby default;letwhen reassignment is needed; avoidvar.