আমি উদাহরণ দিয়ে ব্যাখ্যা করব:
এলভিস অপারেটর (?:)
"এলভিস অপারেটর" জাভার টেরিনারি অপারেটরের একটি সংক্ষিপ্তকরণ। এটি সহজেই যেখানে ব্যবহৃত হয় তার একটি উদাহরণ যদি কোনও অভিব্যক্তিটি মিথ্যা বা শূন্যের দিকে সমাধান করে তবে 'বোধগম্য ডিফল্ট' মানটি ফেরত দেওয়া। একটি সাধারণ উদাহরণ হতে পারে:
def gender = user.male ? "male" : "female" //traditional ternary operator usage
def displayName = user.name ?: "Anonymous" //more compact Elvis operator
নিরাপদ নেভিগেশন অপারেটর (?)
নিরাপদ নেভিগেশন অপারেটরটি নালপয়েন্টারএক্সসেপশন এড়ানোর জন্য ব্যবহৃত হয়। সাধারণত যখন আপনার কোনও অবজেক্টের রেফারেন্স থাকে তখন আপনাকে যাচাই করতে হবে যা অবজেক্টের পদ্ধতি বা বৈশিষ্ট্য অ্যাক্সেস করার আগে এটি বাতিল নয়। এটি এড়াতে, নিরাপদ নেভিগেশন অপারেটর কেবল ব্যতিক্রম ছুঁড়ে ফেলার পরিবর্তে নਾਲকে ফিরে আসবে, এর মতো:
def user = User.find( "admin" ) //this might be null if 'admin' does not exist
def streetName = user?.address?.street //streetName will be null if user or user.address is null - no NPE thrown
??আপনি জাভাস্ক্রিপ্টে সঠিক নাল-কোলেসেসেন্স ( ) সংক্রান্ত ডকুমেন্টেশনের লিঙ্ক সরবরাহ করতে পারেন ? আমি এখন পর্যন্ত যা কিছু খুঁজে পাচ্ছি তার থেকে বোঝা যায় যে জেএসের কেবল "মিথ্যা" কোয়েলসিং রয়েছে (ব্যবহার করছে ||)।