ফ্যালসি (falsy) মানগুলো নিয়ে কাজ করার সময় অনেক কৌতূহল জাগে, বিশেষ করে "null" এবং "0"-এর প্রোপার্টিগুলোর কারণে। যখন আমরা "null" এবং "0"-কে তুলনা করি, তখন কিছু অনন্য পরিস্থিতি সম্মুখীন হয়। বৃহত্তর (>), ক্ষুদ্রতর (<) এবং সমান (=) চেক করলে বুলিয়ান false আউটপুট হিসেবে পাওয়া যায়। কিন্তু বড় বা সমান (>=) চেক করলে বুলিয়ান true আউটপুট হিসেবে পাওয়া যায়।
এখানে প্রশ্ন উঠে: একটি মান কীভাবে ০-র চেয়ে বড় নয়, ০-এর সমান নয়, কিন্তু ০-এর চেয়ে বড় বা সমান?
উদাহরণ
নিচের উদাহরণে, null এবং 0-এর মধ্যে তিনটি শর্ত (বড়, ছোট, সমান) চেক করা হয়েছে। তিনটি কেসেই ফলাফল false পাওয়া গেছে।
<html> <body>
<script>
if(null > 0){
document.write("null is greater than 0");
}
else if(null < 0) {
document.write("null is less than 0");
}
else if(null == 0){
document.write("null is equal to 0");
}
else {
document.write("It is a typical relationship");
}
</script> </body> </html>
আউটপুট
It is a typical relationship
উদাহরণ
নিচের উদাহরণে, null ০-র চেয়ে বড় নয় এবং ০-এর সমান নয়, কিন্তু ০-এর চেয়ে বড় বা সমান। এটি শুনতে খুব অদ্ভুত লাগে। কারণ গণিতে যদি দুটি সংখ্যা a, b থাকে এবং a, b-র চেয়ে ছোট না হয়, তবে সম্ভাব্য পরিস্থিতি: a, b-র চেয়ে বড় অথবা a, b-র সমান।
কিন্তু 'null' এবং '0'-এর ক্ষেত্রে গাণিতিক আশা পূরণ হয় না। এটি জাভাস্ক্রিপ্টে হ্যান্ডেল করার একটি đặczbo কেস।
<html> <body>
<script>
if(null > 0){
document.write("null is greater than 0");
}
else if(null == 0){
document.write("null is equal to 0");
}
else if(null >= 0) {
document.write("null is greater than or equal to 0");
}
</script> </body> </html>
আউটপুট
null is greater than or equal to 0