मैं उदाहरण के द्वारा समझाता हूँ:
एल्विस ऑपरेटर (?)
"एल्विस ऑपरेटर" जावा के टर्नरी ऑपरेटर का एक छोटा हिस्सा है। एक उदाहरण जहां यह काम है एक 'समझदार डिफ़ॉल्ट' मान वापस करने के लिए है अगर एक अभिव्यक्ति झूठी या अशक्त करने के लिए हल करता है। एक साधारण उदाहरण इस तरह लग सकता है:
def gender = user.male ? "male" : "female" //traditional ternary operator usage
def displayName = user.name ?: "Anonymous" //more compact Elvis operator
सुरक्षित नेविगेशन ऑपरेटर (?)
सुरक्षित नेविगेशन ऑपरेटर का उपयोग NullPointerException से बचने के लिए किया जाता है। आमतौर पर जब आपके पास किसी ऑब्जेक्ट का संदर्भ होता है, तो आपको यह सत्यापित करने की आवश्यकता हो सकती है कि यह ऑब्जेक्ट के तरीकों या गुणों तक पहुंचने से पहले शून्य नहीं है। इससे बचने के लिए, सुरक्षित नेविगेशन ऑपरेटर केवल एक अपवाद को फेंकने के बजाय अशक्त हो जाएगा, जैसे:
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
??
जावास्क्रिप्ट में उचित नल-सह-अवधि ( ) के बारे में प्रलेखन के लिए एक लिंक प्रदान कर सकते हैं ? अब तक मुझे जो कुछ भी मिल रहा है, उससे पता चलता है कि जेएस में केवल "फाल्सी" कोलेसिंग (उपयोग करना ||
) है।