मुख्य सामग्री पर जाएं
मॉड्यूल 1 · पाठ 4 का 4पाठ्यक्रम में 4/32~10 min
मॉड्यूल पाठ (4/4)

सशर्त: यदि, अन्यथा, टर्नरी

एक प्रोग्राम लगभग कभी भी अपने सभी निर्देशों को एक सीधी रेखा में नहीं चलाता है। यह लगातार निर्णय लेना पड़ता है: यदि कीमत सीमा से नीचे है, तो इसे लागू करें छूट; यदि उपयोगकर्ता लॉग इन है, तो पैनल दिखाएं; अन्यथा दिखाओ लॉगिन करें. निर्णय लेने के लिए उपयोग किए जाने वाले निर्देशों को सशर्त कहा जाता है।

if / else

मूल प्रपत्र if (condition) { … } else { … } है:

JS
const eta = 20;

if (eta >= 18) {
  console.log('Maggiorenne');
} else {
  console.log('Minorenne');
}

कोष्ठकों के बीच की स्थिति का मूल्यांकन किया जाता है; यदि यह "सच्चाई" है (जेएस में)। शब्दावली) पहला ब्लॉक निष्पादित होता है, अन्यथा दूसरा।

else if जंजीरें

जब दो से अधिक मामले होते हैं, तो उन्हें else if से जोड़ा जाता है:

JS
const punti = 87;
if (punti >= 90) {
  console.log('Eccellente');
} else if (punti >= 70) {
  console.log('Buono');
} else if (punti >= 50) {
  console.log('Sufficiente');
} else {
  console.log('Da migliorare');
}

केवल पहली शाखा जो मेल खाती है उसे निष्पादित किया जाता है।

सच्चा और झूठा

JS छह मानों को "झूठा" मानता है: false, 0, '' (खाली स्ट्रिंग), null, undefined, NaN. बाकी सब सत्य है — यहां तक कि '0', 'false' और खाली सरणी []।

JS
if ('0') console.log('arriva qui'); // 'arriva qui'
if ([]) console.log('e anche qui'); // 'e anche qui'
if (0) console.log('mai'); // (mai)

टर्नरी ऑपरेटर cond ? a : b

जब if/else केवल एक मान उत्पन्न करता है, तो टर्नरी इसे व्यक्त करता है एक पंक्ति और अक्सर अधिक पठनीय होती है:

JS
const eta = 20;
const stato = eta >= 18 ? 'adulto' : 'minorenne';

इसे अजमाएं

व्यायाम#js.m1.l4.e1
प्रयास: 0लोड हो रहा है...

0 से 10 तक ग्रेड दिए जाने पर, यदि ग्रेड >= 6 है, तो 'प्रोमोसो' लौटाएँ, अन्यथा 'बोसिआटो' लौटाएँ। अंतिम अभिव्यक्ति को ग्रेड = 7 के साथ 'प्रोमोसो' का मूल्यांकन करना चाहिए।

संपादक लोड हो रहा है...
संकेत दिखाएँ

टर्नरी `कंड का प्रयोग करें? a : b` अंतिम अभिव्यक्ति के रूप में।

3 प्रयासों के बाद समाधान उपलब्ध है

व्यायाम की समीक्षा करें

व्यायाम#js.m1.l4.e2
प्रयास: 0लोड हो रहा है...

तापमान को वर्गीकृत करें: 'काल्डो' यदि >= 25, 'टाइपिडो' यदि >= 15, अन्यथा 'फ्रेडो'। `t = 20` के साथ अपेक्षित परिणाम 'टाइपिडो' है।

संपादक लोड हो रहा है...
संकेत दिखाएँ

आप टर्नरीज़ को नेस्ट कर सकते हैं: `a >= 25 ? 'कैल्डो' : ए >= 15? 'टिपिडो' : 'फ्रेडो'`।

3 प्रयासों के बाद समाधान उपलब्ध है