Tech TutorBangla Web Documentation
Portfolio
HomeHTMLCSSTailwind CSSJavaScriptTypeScriptReactNext.jsNode.jsExpressSocket.IOExpoWordPressPostgreSQLPrismaPostgresNestJSMongoDBDockerTanStackTanStack TableRTK QueryGitGitHub
  • JavaScript Documentation48টি অধ্যায়
প্রযুক্তি নির্বাচন
HomeHTMLCSSTailwind CSSJavaScriptTypeScriptReactNext.jsNode.jsExpressSocket.IOExpoWordPressPostgreSQLPrismaPostgresNestJSMongoDBDockerTanStackTanStack TableRTK QueryGitGitHub
  • Introduction
  • JavaScript কী?
  • Syntax & Comments
  • Variables
  • Data Types: Basics
  • Data Types: Conversion
  • Data Types: Advanced
  • Strings
  • Numbers & Math
  • Date & Time
  • Operators
  • Conditions
  • Loops
  • Functions: Basics
  • Functions: Intermediate
  • Functions: Advanced
  • Scope & Hoisting
  • Closures & this
  • ES6+ Modern
  • Arrays: Basics
  • Arrays: Intermediate
  • Arrays: Advanced
  • Objects: Basics
  • Objects: Intermediate
  • Objects: Advanced
  • Class: Basics
  • Class: Intermediate
  • Class: Advanced
  • DOM: Basics
  • DOM: Intermediate
  • DOM: Advanced
  • Events: Basics
  • Events: Intermediate
  • Events: Advanced
  • Async JavaScript
  • Promise
  • Async / Await
  • Fetch API
  • JSON
  • Modules
  • Browser Storage
  • Event Loop Deep
  • Prototype Chain
  • Iterators & Generators
  • WeakMap, WeakSet, Proxy
  • Error Handling
  • Practice Problems
  • Mini Projects
  • Basics
  • Functions & Scope
  • Types & Syntax
  • Arrays & Objects
  • Advanced
  • Functional Programming
  • Objects & Symbols
  • Async Deep Dive
  • Modern JavaScript
  1. Docs
  2. JavaScript
  3. প্রশ্ন/উত্তর
  4. Basics
  5. Q1. What is the difference between var, let, and const in JavaScript?
JavaScriptBasics

Q1. What is the difference between var, let, and const in JavaScript?

তিনটি ঘোষণার পদ্ধতি, তাদের scope ও পুনরায় মান বদলানোর পার্থক্য — উদাহরণসহ।

JavaScript-এ ভেরিয়েবল ঘোষণার তিনটি পদ্ধতি আছে — var, let আর const। তিনটিই ভেরিয়েবল তৈরি করে, কিন্তু scope আর মান পুনরায় বদলানো যায় কি না — এই দুই বিষয়ে তারা সম্পূর্ণ আলাদা।

তিনটি ঘোষণা পাশাপাশিjavascript
javascript
var name = "Rahim";
name = "Karim";   // ✅ var-এর মান বদলানো যায়

let score = 10;
score = 20;        // ✅ let-এর মানও বদলানো যায়

const PI = 3.1416;
// PI = 3.14;      // ❌ const বদলানো যায় না

const মান বদলাতে বাধা দেয়, কিন্তু object বা array-এর ভিতরের প্রপার্টি বদলানোতে কোনো বাধা নেই — কারণ পরিবর্তন হচ্ছে object-টাই, reference-টা নয়।

const-এর সীমাবদ্ধতাjavascript
javascript
const user = { name: "Rahim" };
user.name = "Karim"; // ✅ কাজ করে — object-টাই একই থাকে
// user = {};        // ❌ ReferenceError

var শুধু function-scoped — তাই if বা loop-এর ভিতরে ঘোষণা করলেও সেটা পুরো ফাংশন জুড়ে চলে। আর let ও const block-scoped — বন্ধ চিহ্নের বাইরে গেলেই ভেরিয়েবলটি আর পাওয়া যায় না।

block scopejavascript
javascript
if (true) {
  var a = 10;
  let b = 20;
}

console.log(a); // 10 — var block মেনে চলে না
// console.log(b); // ReferenceError — let block-এর ভিতরেই ছিল
বিষয়varletconst
Scopefunctionblockblock
পুনরায় মান বদলানোযায়যায়যায় না
একই নামে আবার ঘোষণাযায়যায় নাযায় না
Hoistingহয়, মান undefined থাকেহয়, কিন্তু ব্যবহার করা যায় নাহয়, কিন্তু ব্যবহার করা যায় না
মনে রাখুন

একটা সহজ নিয়ম বানিয়ে নিন — যে মান আর বদলাবে না সেখানে const, যে বদলাবে সেখানে let, আর নতুন কোডে var এড়িয়ে চলুন।

শেষ প্যারায় নিজে practice করুন — কোড কপি করে নিজের এডিটরে চালিয়ে দেখুন।
Basics বিভাগের আরও প্রশ্নJavaScript প্রশ্ন/উত্তর
Tech Tutor

বাংলায় ওয়েব ডেভেলপমেন্ট ডকুমেন্টেশন শিখুন — ধাপে ধাপে।

Homeসব ডকুমেন্টেশনQuick Startআমার নোটস

© 2026 Tech Tutor. বাংলায় শিখুন, বাংলায় গড়ুন।

mdanamolhasan1998@gmail.com