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. Q4. What is the difference between == and === in JavaScript?
JavaScriptBasics

Q4. What is the difference between == and === in JavaScript?

Loose ও strict equality-র মধ্যে পার্থক্য, type coercion কীভাবে কাজ করে — উদাহরণসহ।

== হলো loose equality — মান দুটো মিলিয়ে দেখার আগে প্রথমে type coercion করে নেয়, অর্থাৎ একটা ধরনকে অন্যটায় বদলে ফেলে। আর === হলো strict equality — type আর value দুটোই হুবহু এক হলে তবেই true।

== বনাম ===javascript
javascript
5 == "5";   // true  — "5" কে সংখ্যায় বদলে দেওয়া হলো
5 === "5";  // false — একটি number, অন্যটি string

0 == "";       // true  — "" এখন 0 হয়ে যায়
0 === "";      // false

null == undefined;  // true
null === undefined; // false

প্রথম উদাহরণটা ধাপে ধাপে: 5 একটি number, "5" একটি string। == ডান পাশের মানকে বাঁ পাশের ধরনে বদলে নেয়, তাই "5" হয়ে যায় 5 — ফলে true। কিন্তু === কোনো রূপান্তর করে না, তাই ধরন আলাদা হওয়াতেই false।

দুটি ব্যতিক্রম মনে রাখা দরকার — NaN নিজের সাথে সমান নয়, আর 0 ও -0 কে === সমান মনে করে।

NaN ও -0javascript
javascript
NaN === NaN; // false — এমন ফলাফল ইচ্ছাকৃত
Number.isNaN(NaN); // true — NaN চেক করার সঠিক উপায়

0 === -0; // true
Object.is(0, -0); // false
তুলনাফলাফলকারণ
5 == \"5\"truestring কে number-এ coercion হয়েছে
5 === \"5\"falseধরন আলাদা
null == undefinedtrueloose তুলনায় দুটো সমান ধরা হয়
null === undefinedfalseধরন আলাদা
NaN == NaNfalseNaN নিজেকেই সমান মনে করে না
মনে রাখুন

প্রায় সবসময় === ব্যবহার করুন। ইচ্ছাকৃতভাবে coercion দরকার হলে বা null ও undefined দুটোই ধরতে চাইলে তখনই == লিখুন — কিন্তু তখন ইচ্ছাকৃত হিসেবে।

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

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

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

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

mdanamolhasan1998@gmail.com