लोड हो रहा है...

null और undefined

आपने बूलियन सीखे — साफ़ हाँ या नहीं। प्रोग्राम को कभी यह भी कहना पड़ता है «यहाँ कोई मान नहीं।» JavaScript में दो आम खाली मान हैं: undefined और null। दिखने में मिलते-जुलते हैं, पर कहानी अलग है। यहाँ इन्हें अलग करते हैं ताकि आगे रूपांतरण और जाँच समझ में आएँ।

null और undefined में क्या अंतर है?

undefined आमतौर पर मतलब है «अभी कुछ रखा नहीं» — let से घोषित पर असाइन नहीं किया, या कोई हिस्सा गायब। null मतलब «जानबूझकर खाली»: आप (या कोई API) जगह साफ़ करने के लिए null लगाते हैं। typeof से जाँचें: typeof undefined है "undefined", पर typeof null पुरानी quirk "object" है। तुलना में === बेहतर। दोनों falsy हैं, पर बूलियन (true / false) नहीं।

खाली मानों का टूलकिट

📊 शुरुआती के लिए null बनाम undefined

विचार उदाहरण परिणाम / नोट
गायब / असाइन नहीं let x; फिर x undefined
जानबूझकर खाली let box = null आपने खाली चुना
typeof गायब typeof undefined "undefined"
typeof खाली typeof null "object" (quirk — फिर भी खाली)
सख्त तुलना box === null जब box में null हो तो true
ढीली तुलना null == undefined == से true — स्पष्टता के लिए === चुनें

undefined — अभी असाइन नहीं

let से नाम घोषित करें और कुछ न दें। मान undefined है। मान और typeof दोनों लॉग करें ताकि "undefined" लेबल याद रहे।

डिफ़ॉल्ट undefined

javascript
let nickname;
console.log(nickname);
console.log(typeof nickname);

null — जानबूझकर खाली

जब साफ़ संकेत «कोई मान नहीं» देना हो तो null लगाएँ। असाइन भूलने से यह अलग है।

जानबूझकर null असाइन करें

javascript
let selected = null;
console.log(selected);
console.log(typeof selected);

typeof साथ-साथ

दोनों परिणाम एक जगह देखें। याद रखें: typeof null का "object" quirk है — अभी पूरा ऑब्जेक्ट पाठ नहीं।

undefined और null का typeof

javascript
console.log(typeof undefined);
console.log(typeof null);
let a;
let b = null;
console.log(typeof a);
console.log(typeof b);

null और undefined के लिए === चुनें

=== मान और प्रकार दोनों पूछता है। जब मतलब «ठीक null» या «ठीक undefined» हो तो इसे इस्तेमाल करें। == से null और undefined मेल खा सकते हैं — सीखते समय भ्रमित करता है।

=== से सख्त जाँच

javascript
let user = null;
let title;
console.log(user === null);
console.log(title === undefined);
console.log(user === undefined);

ढीला == दोनों को मिला सकता है

== से null और undefined मेल खाते हैं। एक बार लॉग करें — असली जाँच === पर रखें।

null और undefined के बीच ढीला ==

javascript
console.log(null == undefined);
console.log(null === undefined);

पहली पंक्ति true है क्योंकि == ढीला है। दूसरी false है। असली जाँच === से लिखें ताकि इरादा साफ़ रहे।

पेज पर दोनों खाली दिखाएँ

एक undefined-जैसा नाम और एक null रखें, फिर textContent से छोटे लेबल लिखें।

null और undefined के पेज लेबल

html
<!DOCTYPE html>
<html>
<head>
<title>null and undefined — labels</title>
</head>
<body>
<p id="out">…</p>
<script>
let title;
let avatar = null;
document.getElementById("out").textContent =
"title=" + title + " | avatar=" + avatar;
</script>
</body>
</html>

पैराग्राफ एक पंक्ति में दोनों खाली दिखाता है। सिर्फ avatar को छोटी स्ट्रिंग बनाएँ, रिफ़्रेश करें, और देखें दायाँ आधा बदलता है जबकि title undefined रहता है।

खुद आज़माएँ

  1. let city; घोषित करें — बिना असाइन city और typeof city लॉग करें।
  2. let bag = null; लगाएँ — मान और typeof bag लॉग करें ("object" quirk देखें)।
  3. typeof undefined और typeof null साथ लॉग करें।
  4. === से तुलना: null वाला वेरिएबल बनाम null और बनाम undefined।
  5. एक बार null == undefined लॉग करें; असली जाँच === से लिखें।
  6. HTML डेमो में avatar को "pic.png" करें, रिफ़्रेश करें, नई पंक्ति पढ़ें।

आम गलतियाँ

  • null और undefined को हमेशा एक समझना — अर्थ अलग है (जानबूझकर बनाम असाइन नहीं)
  • typeof null = "object" पर घबराना — quirk; null फिर भी जानबूझकर खाली
  • बिना देखे == पर निर्भर रहना
  • इन्हें बूलियन कहना — खाली मान हैं; बूलियन सिर्फ true / false
  • खाली स्ट्रिंग "" को null से मिलाना — "" अभी भी स्ट्रिंग है

सार

  • undefined: गायब / अभी असाइन नहीं; typeof → "undefined"
  • null: जानबूझकर खाली जो आप लगाते हैं; typeof → "object" (quirk)
  • साफ़ जाँच के लिए === चुनें; दोनों falsy हैं पर बूलियन नहीं
  • खाली स्ट्रिंग "" टेक्स्ट है — null या undefined नहीं
  • अगला: टाइप कन्वर्ज़न — एक तरह के मान को जानबूझकर दूसरी तरह में बदलना

🧠 अपने ज्ञान की परीक्षा करें

शुरू करने के लिए तैयार

अपने ज्ञान की परीक्षा करें

इस इंटरैक्टिव क्विज़ के साथ अपनी चुनौती लें और देखें कि आप विषय को कितनी अच्छी तरह समझते हैं

❓
8
प्रश्न
🎯
70%
पास करने के लिए
♾️
∞
समय
🔄
∞
प्रयास

📝 निर्देश

  • हर प्रश्न को ध्यान से पढ़ें
  • हर प्रश्न के लिए सबसे अच्छा उत्तर चुनें
  • आप जितनी बार चाहें क्विज़ दोबारा दे सकते हैं
  • आपकी प्रगति शीर्ष पर दिखाई जाएगी