একটি বুলিয়ান প্রসঙ্গে (if, &&, ||, !), প্রতিটি মান হয় সত্য বা মিথ্যা হিসাবে বিবেচিত হয়। ঠিক ৮টি মিথ্যা মান রয়েছে — অন্য সবকিছু সত্য।
মিথ্যা মানগুলি: , , , (BigInt শূন্য), (খালি string), , , ।
একটি বুলিয়ান প্রসঙ্গে (if, &&, ||, !), প্রতিটি মান হয় সত্য বা মিথ্যা হিসাবে বিবেচিত হয়। ঠিক ৮টি মিথ্যা মান রয়েছে — অন্য সবকিছু সত্য।
মিথ্যা মানগুলি: , , , (BigInt শূন্য), (খালি string), , , ।
false0-00n""nullundefinedNaNif ("") {} // skipped — empty string is falsy
if (0) {} // skipped
if ("0") {} // RUNS — non-empty string is truthy!
if ([]) {} // RUNS — empty array is truthy!
if ({}) {} // RUNS — empty object is truthy!
আশ্চর্যজনক বিষয়গুলি: "0", [], এবং {} সবই সত্য, যদিও তারা "খালি" মনে হয়।
const name = input || "guest"; // ❌ if input is "" or 0, falls back to "guest"
const count = input ?? 0; // ✅ ?? only falls back on null/undefined
|| যেকোনো মিথ্যা মানের জন্য ফল্ব্যাক করে, তাই একটি বৈধ 0 বা "" প্রতিস্থাপিত হয়। nullish coalescing অপারেটর ?? শুধুমাত্র null/undefined-এর জন্য ফল্ব্যাক করে, যা সাধারণত আপনি যা চান তা।
ঠিক মিথ্যা সেট জানা সূক্ষ্ম বাগ প্রতিরোধ করে — বিশেষ করে সংখ্যা রক্ষা করা (if (count > 0) এবং if (count) নয়) এবং ডিফল্টগুলির জন্য ?? বনাম || বেছে নেওয়া।