इफ / एल्स स्टेटमेंट्स के लिए शॉर्टकट के रूप में जावास्क्रिप्ट टर्नरी ऑपरेटर

में सशर्त टर्नरी ऑपरेटर जावास्क्रिप्ट कुछ शर्त के आधार पर एक चर के लिए एक मूल्य प्रदान करता है और केवल जावास्क्रिप्ट ऑपरेटर है जो तीन ऑपरेंड लेता है।

Ternary ऑपरेटर एक का विकल्प है अगर बयान जिसमें दोनों अगर तथा अन्य खंड एक ही क्षेत्र में भिन्न मान प्रदान करते हैं, जैसे:

अगर (स्थिति)
परिणाम = 'कुछ';
अन्य
परिणाम = 'someelse';

टर्नररी संचालक इसको छोटा करता है यदि / एक ही बयान में एक और बयान:

परिणाम = (स्थिति)? 'कुछ': 'कुछ-कुछ'; 

अगर शर्त सच है, टर्नरी ऑपरेटर पहली अभिव्यक्ति का मूल्य लौटाता है; अन्यथा, यह दूसरी अभिव्यक्ति का मूल्य लौटाता है। आइए इसके भागों पर विचार करें:

  • सबसे पहले, वैरिएबल बनाएं जिसमें आप एक मान असाइन करना चाहते हैं, इस मामले में, परिणाम. चर परिणाम शर्त के आधार पर एक अलग मूल्य होगा।
  • ध्यान दें कि दाईं ओर (यानी ऑपरेटर स्वयं), शर्त पहला है।
  • शर्त हमेशा एक प्रश्न चिह्न के बाद (?), जो मूल रूप से पढ़ा जा सकता है "क्या यह सच था?"
  • दो संभावित परिणाम अंतिम आते हैं, एक बृहदान्त्र द्वारा अलग किए जाते हैं (:).

का यह प्रयोग टर्नरी ऑपरेटर केवल तभी उपलब्ध होता है जब मूल अगर कथन ऊपर दिखाए गए प्रारूप का अनुसरण करता है - लेकिन यह काफी सामान्य परिदृश्य है, और टर्नरी ऑपरेटर का उपयोग करना कहीं अधिक कुशल हो सकता है।

instagram viewer

टेनेरी संचालक उदाहरण

आइए एक वास्तविक उदाहरण देखें।

शायद आपको यह निर्धारित करने की आवश्यकता है कि किन बच्चों को बालवाड़ी में भाग लेने के लिए सही उम्र है। आपके पास इस तरह का एक सशर्त विवरण हो सकता है:

var आयु = 7;
var किंडरगार्टन_योग्य;
अगर (उम्र> 5) {
किंडरगार्टन_योग्य = "काफी पुराना";
}
अन्य {
किंडरगार्टन_योग्य = "बहुत युवा";
}

टर्नेरी ऑपरेटर का उपयोग करते हुए, आप इस अभिव्यक्ति को छोटा कर सकते हैं:

var बालवाड़ी_योग्य = (आयु <5)? "बहुत युवा": "काफी पुराना";

यह उदाहरण, निश्चित रूप से, "पुराना पर्याप्त होगा।"

एकाधिक मूल्यांकन

आप कई मूल्यांकन शामिल कर सकते हैं, साथ ही:

var age = 7, var socially_ready = true;
var बालवाड़ी_योग्य = (आयु <5)? "टू यंग": सामाजिक रूप से पहले से ही
"पुराना पर्याप्त है लेकिन अभी तक तैयार नहीं है" "पुराने और सामाजिक रूप से पर्याप्त परिपक्व"
कंसोल.लॉग (बालवाड़ी_ योग्य); // लॉग "पुराने और सामाजिक रूप से काफी परिपक्व"

कई ऑपरेशन

टर्नरी ऑपरेटर एक कॉमा द्वारा अलग किए गए प्रत्येक अभिव्यक्ति के लिए कई ऑपरेशनों को शामिल करने की भी अनुमति देता है:

var आयु = 7, सामाजिक रूप से पहले से ही = सत्य;
उम्र> 5? (
चेतावनी ("आप काफी पुराने हैं।")
location.assign ( "continue.html")
): (
सामाजिक रूप से पहले से ही = गलत,
चेतावनी ("क्षमा करें, लेकिन आप अभी तक तैयार नहीं हैं।")
);

टर्नेरी संचालक निहितार्थ

टर्नरी ऑपरेटर अन्यथा क्रिया से बचें कोड, इसलिए एक ओर, वे वांछनीय दिखाई देते हैं। दूसरी ओर, वे पठनीयता से समझौता कर सकते हैं - जाहिर है, "अगर ईएलएसई" एक क्रिप्टोकरंसी की तुलना में अधिक आसानी से समझा जाता है "?"।

एक टर्नरी ऑपरेटर का उपयोग करते समय - या किसी भी संक्षिप्त नाम पर - विचार करें कि आपका कोड कौन पढ़ रहा होगा। यदि कम-अनुभवी डेवलपर्स को आपके कार्यक्रम तर्क को समझने की आवश्यकता हो सकती है, तो शायद टर्नरी ऑपरेटर के उपयोग से बचा जाना चाहिए। यह विशेष रूप से सच है यदि आपकी स्थिति और मूल्यांकन पर्याप्त जटिल हैं, तो आपको अपने टर्नरी ऑपरेटर को घोंसले या श्रृंखला की आवश्यकता होगी। वास्तव में, इस प्रकार के नेस्टेड ऑपरेटर न केवल पठनीयता बल्कि डीबगिंग को प्रभावित कर सकते हैं।

किसी भी प्रोग्रामिंग निर्णय के साथ, टर्नरी ऑपरेटर का उपयोग करने से पहले संदर्भ और उपयोगिता पर विचार करना सुनिश्चित करें।