JavaScript में लॉजिकल OR ऑपरेटर (||) या नलिश कोलेसिंग ऑपरेटर (??) का उपयोग करके null या undefined मानों को डिफ़ॉल्ट मान से बदल सकते हैं।
विधि 1: लॉजिकल OR (||) ऑपरेटर
नोट: यह 0, "", false, NaN जैसे फाल्सी मानों को भी बदल देता है।
var value = null;
var actualValue = value || "यह डिफ़ॉल्ट मान है";
console.log(actualValue); // "यह डिफ़ॉल्ट मान है"
var name = "";
var displayName = name || "अनाम उपयोगकर्ता";
console.log(displayName); // "अनाम उपयोगकर्ता"
var count = 0;
var finalCount = count || 10; // 0 भी बदल जाएगा!
console.log(finalCount); // 10
विधि 2: नलिश कोलेसिंग ऑपरेटर (??) - अनुशंसित (ES2020)
केवल null या undefined के लिए डिफ़ॉल्ट मान सेट करता है, अन्य फाल्सी मानों (0, "", false) को बरकरार रखता है।
var value = null;
var actualValue = value ?? "यह डिफ़ॉल्ट मान है";
console.log(actualValue); // "यह डिफ़ॉल्ट मान है"
var count = 0;
var finalCount = count ?? 10; // 0 को नहीं बदलेगा
console.log(finalCount); // 0
var name = "";
var displayName = name ?? "अनाम"; // खाली स्ट्रिंग को नहीं बदलेगा
console.log(displayName); // ""
तुलना तालिका
| मान | || परिणाम | ?? परिणाम |
|---|---|---|
null | डिफ़ॉल्ट | डिफ़ॉल्ट |
undefined | डिफ़ॉल्ट | डिफ़ॉल्ट |
0 | डिफ़ॉल्ट | 0 |
"" | डिफ़ॉल्ट | "" |
false | डिफ़ॉल्ट | false |
NaN | डिफ़ॉल्ट | NaN |
व्यावहारिक उदाहरण
function greetUser(name) {
// ?? ऑपरेटर से केवल null/undefined पर डिफ़ॉल्ट
var displayName = name ?? "मेहमान";
console.log("नमस्ते, " + displayName + "!");
}
greetUser("राहुल"); // नमस्ते, राहुल!
greetUser(null); // नमस्ते, मेहमान!
greetUser(undefined); // नमस्ते, मेहमान!
greetUser(""); // नमस्ते, ! (खाली स्ट्रिंग बरकरार)
चलाने का तरीका
node default-values.js
सिफारिश
आधुनिक JavaScript (ES2020+) में ?? ऑपरेटर का उपयोग करें क्योंकि यह केवल null/undefined को संभालता है और अन्य फाल्सी मानों का सम्मान करता है।