জাভাস্ক্রিপ্টে বুলিয়ান টাইপের মানের তুলনা

পূর্ববর্তী উদাহরণে আমরা তুলনার জন্য === অপারেটর ব্যবহার করেছি। এই ক্ষেত্রে আমাদের ভেরিয়েবল true এর সাথে সমতা পরীক্ষা করা হয় মান এবং টাইপ উভয় দিক দিয়েই।

এই ধরনের তুলনার জন্য == অপারেটরও ব্যবহার করা যেতে পারে। যদি test ভেরিয়েবলে সবসময় true বা false মানগুলির একটি থাকে, তবে কিছুই পরিবর্তন হবে না:

javascriptlet test = true; // এখানে হয় true বা false লিখি

if (test == true) {
  console.log('+++');
} else {
  console.log('---');
}

কিন্তু যদি test ভেরিয়েবলে যেকোনো মান থাকতে পারে, তবে সবকিছু হয়ে যায় অনেক বেশি জটিল।

এই ক্ষেত্রে, যদি test ভেরিয়েবলে বুলিয়ান মান না থাকে, তবে এই মান প্রথমে বুলিয়ানে রূপান্তরিত হবে এবং শুধুমাত্র তারপর তুলনা করা হবে।

ধরা যাক, test ভেরিয়েবলে 1 সংখ্যাটি আছে। এই ক্ষেত্রে এটি প্রথমে লজিক্যাল টাইপে রূপান্তরিত হবে, অর্থাৎ true-এ। এবং তারপর তুলনা করা হবে:

javascriptlet test = 1;

if (test == true) {
  console.log('+++'); // এটি কার্যকর হবে
} else {
  console.log('---');
}

কিন্তু, উদাহরণস্বরূপ, 0 সংখ্যাটি রূপান্তরিত হয় false-এ। এবং আমাদের শর্ত ফলাফলে '---' আউটপুট করবে:

javascriptlet test = 0;

if (test == true) {
  console.log('+++');
} else {
  console.log('---'); // এটি কার্যকর হবে
}

কার্যত এই ধরনের তুলনা স্পষ্টভাবে নিম্নলিখিত আকারে পুনরায় লেখা যেতে পারে:

javascriptlet test = 1;

if (Boolean(test) == true) {
  console.log('+++');
} else {
  console.log('---');
}
Задание 1

মনে রাখুন এবং লিখুন, কোন মানগুলি লজিক্যাল টাইপে রূপান্তরিত হলে false দেয়।

Задание 2

কód চালু না করে, নির্ধারণ করুন, কনসোলে কী আউটপুট হবে:

javascriptlet test = 1;
    
if (test == true) {
  console.log('+++');
} else {
  console.log('---');
}
Задание 3

কód চালু না করে, নির্ধারণ করুন, কনসোলে কী আউটপুট হবে:

javascriptlet test = 0;
    
if (test == true) {
  console.log('+++');
} else {
  console.log('---');
}
Задание 4

কód চালু না করে, নির্ধারণ করুন, কনসোলে কী আউটপুট হবে:

javascriptlet test = 1;
    
if (test == false) {
  console.log('+++');
} else {
  console.log('---');
}
Задание 5

কód চালু না করে, নির্ধারণ করুন, কনসোলে কী আউটপুট হবে:

javascriptlet test = 1;
    
if (test != true) {
  console.log('+++');
} else {
  console.log('---');
}
Задание 6

কód চালু না করে, নির্ধারণ করুন, কনসোলে কী আウটপুট হবে:

javascriptlet test = '';
    
if (test == false) {
  console.log('+++');
} else {
  console.log('---');
}
Задание 7

কód চালু না করে, নির্ধারণ করুন, কনসোলে কী আউটপুট হবে:

javascriptlet test;
    
if (test == true) {
  console.log('+++');
} else {
  console.log('---');
}
Задание 8

কód চালু না করে, নির্ধারণ করুন, কনসোলে কী আউটপুট হবে:

javascriptlet test = 3 * 'a';
    
if (test == true) {
  console.log('+++');
} else {
  console.log('---');
}