Skip to content
-
Subscribe to our newsletter & never miss our best posts. Subscribe Now!
Developer Hint

Your Ultimate Guide to Web Development.

Developer Hint

Your Ultimate Guide to Web Development.

  • Home
  • Web Development
  • Tech Explained
  • Developer Tools
  • Contact Us
  • Home
  • Web Development
  • Tech Explained
  • Developer Tools
  • Contact Us
Close

Search

Subscribe
Developer Hint

Your Ultimate Guide to Web Development.

Developer Hint

Your Ultimate Guide to Web Development.

  • Home
  • Web Development
  • Tech Explained
  • Developer Tools
  • Contact Us
  • Home
  • Web Development
  • Tech Explained
  • Developer Tools
  • Contact Us
Close

Search

Subscribe
Home/Web Development/JavaScript Variable Declarations: Understanding var, let, and const
Var Vs Let Vs Const In Javascript
Web Development

JavaScript Variable Declarations: Understanding var, let, and const

blank
By Developer Hint
January 26, 2026 2 Min Read
0

Introduction

JavaScript gives us three ways to declare variables: var, let, and const.

At first, they may look similar but they behave very differently when it comes to scope, hoisting, and reassignment. Choosing the wrong one can lead to bugs that are hard to track.

Let’s break them down step by step.

What Is var in JavaScript?

var is the old way of declaring variables in JavaScript.

Example

var name = "Ali";
Key Characteristics
  • Function-scoped
  • Hoisted with undefined
  • Can be redeclared
  • Can be reassigned

Scope Differences

var Scope

var is function-scoped, not block-scoped.

if (true) {
var age = 25;
}
console.log(age); // 25

⚠️ This can cause unexpected behavior.

let and const Scope

let and const are block-scoped.

if (true) {
let city = "Mogadishu";
}
console.log(city); // Error

✔ Much safer and predictable.

Hoisting Behavior Explained

Hoistingwith var

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

Output: undefined

var is hoisted and initialized with undefined.

Hoistingwith let and const

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

❌ Error:

ReferenceError: Cannot access 'y' before initialization

This happens because of the Temporal Dead Zone (TDZ).

Redeclaration Rules

var Allows Redeclaration

var score = 10;
var score = 20;

✔ No error (but risky).

let and const Do NOT

let score = 10;
let score = 20; // Error

✔ Prevents accidental overwrites.

Reassignment Differences

var and let

let count = 1;
count = 2; // Allowed

const

const PI = 3.14;
PI = 3.15; // Error

⚠️ const means the variable reference cannot change.

Important Note About const Objects

You can modify object properties declared with const.

const user = { name: "Ali" };
user.name = "Ahmed"; // Allowed

✔ The reference stays the same.

Comparison Table

Featurevarletconst
ScopeFunctionBlockBlock
HoistedYes (undefined)Yes (TDZ)Yes (TDZ)
RedeclarationYesNoNo
ReassignmentYesYesNo
Recommended❌✅✅

When to Use What

  • ✅ Use const by default
  • ✅ Use let when value needs to change
  • ❌ Avoid var in modern JavaScript

Common Beginner Mistakes

  • Using var out of habit
  • Thinking const means “immutable”
  • Accessing let variables too early
  • Mixing scopes accidentally

Best Practices

  • Always start with const
  • Switch to let only when needed
  • Never use var in modern code
  • Keep variable scopes small and clear

Conclusion

Understanding the differences between var, let, and const is essential for writing clean, predictable JavaScript. Modern JavaScript favors let and const because they reduce bugs and improve readability.

At Developer Hint we focus on explaining JavaScript concepts clearly, helping you write better code with confidence.

Content Disclosure
This content was created with the assistance of AI tools and thoroughly reviewed, fact-checked, and refined by a human editor to ensure accuracy, clarity, and usefulness for readers.
Advertisements
banner

Tags:

JavaScriptWeb Development
blank
Author

Developer Hint

Follow Me
Other Articles
What Is Javascript Hoisting
Previous

JavaScript Hoisting Explained: Avoid Common Mistakes

Javascript Arrow Functions Explained With Practical Examples
Next

Understanding JavaScript Arrow Functions with Examples

No Comment! Be the first one.

    Leave a Reply Cancel reply

    Your email address will not be published. Required fields are marked *

    Random Posts

    • What Is CDN? How It Works and Why Websites Use ItWhat Is CDN? How It Works and Why Websites Use It
    • Common Mistakes Beginner Web Developers MakeCommon Mistakes Beginner Web Developers Make
    • How Does a Website Work? From Domain to Browser ExplainedHow Does a Website Work? From Domain to Browser Explained
    • ย 5 Essential Tools Every Blogger Should Useย 5 Essential Tools Every Blogger Should Use
    • ย What Is Technical SEO? A Beginner’s Guide for Developersย What Is Technical SEO? A Beginner’s Guide for Developers

    Popular

    Random Posts

    • How to Speed Up Your WordPress Website (Complete Performance Guide)How to Speed Up Your WordPress Website (Complete Performance Guide)
    • The Website Explained: Meaning, History, and How It Works for BeginnersThe Website Explained: Meaning, History, and How It Works for Beginners
    • What Is a Domain Name and How Does It Work? โ€” Complete Beginnerโ€™s GuideWhat Is a Domain Name and How Does It Work? โ€” Complete Beginnerโ€™s Guide
    • How to Build Consistency as a Web Developer (Even If Youโ€™re Busy)How to Build Consistency as a Web Developer (Even If Youโ€™re Busy)
    • What Is the Internet? Definition, History, and How It Works (Complete Guide)What Is the Internet? Definition, History, and How It Works (Complete Guide)

    Legal pages

    • About Us
    • Privacy Policy
    • Terms and Conditions
    • Disclaimer

    Trending

    Copyright 2026 โ€” Developer Hint. All rights reserved.

    ►
    Necessary cookies enable essential site features like secure log-ins and consent preference adjustments. They do not store personal data.
    None
    ►
    Functional cookies support features like content sharing on social media, collecting feedback, and enabling third-party tools.
    None
    ►
    Analytical cookies track visitor interactions, providing insights on metrics like visitor count, bounce rate, and traffic sources.
    None
    ►
    Advertisement cookies deliver personalized ads based on your previous visits and analyze the effectiveness of ad campaigns.
    None
    ►
    Unclassified cookies are cookies that we are in the process of classifying, together with the providers of individual cookies.
    None