8.21 Optional chaining and Nullish Coalescing Operator
Optional chaining
একটি উদাহরণ দিয়ে শুরু করা যাক।
আমরা যখনি একটি object এর কোন property/properties access করতে যাই তখন তাকে “.” symbol দ্বারা access করে একটি chain create করি।
যেমন : student.name বা student.age .
কিন্তু এই chain টি valid কিনা তা check করার জন্য Optional chaining use করে খুব সহজেই তা বের করে ফেলতে পারি /
আমরা এখন student.school কে access করতে যাই, তবে javascript আমাদের একটি undefined show করবে এবং বলবে যে, আমরা এই student নামক object টির school নামক যে property টি access করতে চাচ্ছি, তা student নামক object টির মাঝে নেই.
তাই একটি property কোন object এ belong করে কি না, এবং যদি সেই প্রপার্টি টি object এ belong করে তা Optional chaining এর মাধ্যমে check করে নিতে পারি।
তবে main object এর ক্ষেত্রে এটি প্রযোজ্য নয়.
যেমন :studentXyz?.address কে access করতে চাইলে সে একটি ReferenceError দিবে।
একইভাবে array এর ক্ষেত্রেও আমরা array এর property এর validity check করতে পারি।
Example :
Nullish coalescing operator
Nullish coalescing operator এমন একটি operator, যা left-hand side এ null কিংবা undefined থাকলে right-hand side কে return করে অন্যথায় সে তার left-hand side operand কে return করে।
- let student = {id: 0,registration_no: 10102019,age: 7,class: “Standart 1”,Hometown: “Mymensingh”,};
- উদাহরণ- ১
console.log(student.registration_no); // 10102019- উদাহরণ- ২
console.log(student?.registration_no); //10102019- উদাহরণ- ৩
console.log(student?.age ?? “Humm…”); // 7- উদাহরণ- ৪
console.log(student?.father ?? “Humm…”); //Humm..- উদাহরণ- ৫
console.log(teacher?.has_pocket); //aa.js:13 Uncaught ReferenceError: teacher is not defined
-
let shirtData = {id: 0,product_id: “##321ssl”,size: “XL”,color: “red”,has_pocket: false,};console.log(shirtData.product_id);console.log(shirtData?.product_id);console.log(shirtData?.color);console.log(shirtData.has_button);console.log(shirtData?.has_button);console.log(shirtData?.has_button ?? “Humm…”);console.log(shirtData?.has_pocket ?? “Humm…”);console.log(shirt.has_pocket ?? “Humm…”);console.log(shirt?.has_pocket ?? “Humm…”);
- উল্লিখিত কোডটির আউটপুটগুলো বের কর।