JavaScript Comparisons

JavaScript में comparison operators का उपयोग दो values को आपस में तुलना (compare) करने के लिए किया जाता है।
इन comparisons का परिणाम हमेशा एक Boolean value (true या false) होता है।

इस अध्याय में आप सीखेंगे:

  • Comparison operators क्या होते हैं
  • Equal (==) और Strict equal (===) में अंतर
  • Number, string और type comparison
  • Examples और अभ्यास प्रश्न

🔹 1. Comparison Operators की सूची

Operatorअर्थउदाहरणOutput
==बराबर (value)5 == "5"true
===पूरी तरह बराबर (value + type)5 === "5"false
!=बराबर नहीं (value)5 != "5"false
!==पूरी तरह बराबर नहीं5 !== "5"true
>बड़ा10 > 5true
<छोटा10 < 5false
>=बड़ा या बराबर5 >= 5true
<=छोटा या बराबर4 <= 3false

🔹 2. Equal (==) vs Strict Equal (===)

== – केवल value compare करता है, type को नहीं देखता

console.log(5 == "5");  // Output: true

=== – value और type दोनों compare करता है

console.log(5 === "5"); // Output: false

सुझाव: हमेशा === का ही उपयोग करें ताकि type mismatch से बच सकें।


🔹 3. Not Equal (!=) vs Strict Not Equal (!==)

console.log(5 != "5");    // Output: false
console.log(5 !== "5");   // Output: true

🔹 4. Strings Comparison

Strings को alphabetically compare किया जाता है (Unicode के अनुसार):

console.log("apple" < "banana");  // Output: true
console.log("Zebra" > "apple");   // Output: false

Uppercase letters, lowercase से छोटे माने जाते हैं:

console.log("Apple" < "apple");  // Output: true

🔹 5. Boolean Comparison

console.log(true == 1);   // Output: true
console.log(false == 0);  // Output: true
console.log(true === 1);  // Output: false

🔹 6. Comparing Different Types

JavaScript जब different types compare करता है तो वो type coercion करता है।

console.log("10" > 5);    // Output: true (string "10" => number 10)
console.log(null == 0);   // Output: false
console.log(null >= 0);   // Output: true

⚠️ JavaScript में null और undefined के साथ comparisons tricky हो सकते हैं।


🔹 7. Special Case: NaN

NaN (Not-a-Number) कभी भी खुद से बराबर नहीं होता!

console.log(NaN == NaN);   // false
console.log(Number.isNaN(NaN));  // true

📋 Summary Table

ExpressionResult
5 == "5"true
5 === "5"false
null == undefinedtrue
null === undefinedfalse
"a" < "b"true
true == 1true
false === 0false
NaN == NaNfalse

अभ्यास प्रश्न

  1. == और === में क्या अंतर है? एक उदाहरण दीजिए।
  2. "Apple" < "apple" का output क्या होगा और क्यों?
  3. नीचे दिए गए code का output क्या होगा: console.log(null == 0); console.log(null >= 0);
  4. true === 1 का परिणाम क्या होगा और क्यों?
  5. एक ऐसा function बनाइए जो दो values को strictly compare करे और बताए कि वो equal हैं या नहीं।

JavaScript में comparisons logic बनाने के लिए जरूरी हैं – चाहे वो form validation हो, user login check, sorting, या condition-based action।
इनकी अच्छी समझ आपको complex programming में confident बनाती है।