You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Web-Dev-For-Beginners/translations/ne/2-js-basics/3-making-decisions/README.md

19 KiB

जाभास्क्रिप्ट आधारभूत: निर्णय लिनु

जाभास्क्रिप्ट आधारभूत - निर्णय लिनु

स्केच नोट Tomomi Imura द्वारा

प्रि-लेक्चर क्विज

प्रि-लेक्चर क्विज

निर्णय लिनु र तपाईंको कोड कसरी चल्छ भन्ने क्रमलाई नियन्त्रण गर्नुले तपाईंको कोडलाई पुनः प्रयोगयोग्य र बलियो बनाउँछ। यो खण्डले जाभास्क्रिप्टमा डाटा प्रवाह नियन्त्रण गर्ने सिन्ट्याक्स र बूलियन डाटा प्रकारसँग प्रयोग गर्दा यसको महत्त्वलाई समेट्छ।

निर्णय लिनु

🎥 माथिको तस्बिरमा क्लिक गर्नुहोस् निर्णय लिनु सम्बन्धी भिडियो हेर्न।

तपाईं यो पाठ Microsoft Learn मा लिन सक्नुहुन्छ!

बूलियनको संक्षिप्त पुनरावलोकन

बूलियनमा केवल दुई मानहरू हुन सक्छ: true वा false। बूलियनले निर्णय गर्न मद्दत गर्दछ कि कुन लाइनको कोड निश्चित सर्तहरू पूरा हुँदा चल्नुपर्छ।

तपाईंको बूलियनलाई यसरी true वा false सेट गर्नुहोस्:

let myTrueBool = true
let myFalseBool = false

बूलियनको नाम अंग्रेज गणितज्ञ, दार्शनिक र तर्कशास्त्री George Boole (18151864) बाट राखिएको हो।

तुलना अपरेटरहरू र बूलियनहरू

अपरेटरहरू सर्तहरू मूल्याङ्कन गर्न प्रयोग गरिन्छ जसले तुलना गरेर बूलियन मान सिर्जना गर्दछ। तल बारम्बार प्रयोग गरिने अपरेटरहरूको सूची छ।

प्रतीक विवरण उदाहरण
< कम भन्दा: दुई मानहरूको तुलना गर्दछ र यदि बाँया पक्षको मान दायाँ पक्षको भन्दा कम छ भने true बूलियन डाटा प्रकार फर्काउँछ 5 < 6 // true
<= कम वा बराबर: दुई मानहरूको तुलना गर्दछ र यदि बाँया पक्षको मान दायाँ पक्षको भन्दा कम वा बराबर छ भने true बूलियन डाटा प्रकार फर्काउँछ 5 <= 6 // true
> धेरै भन्दा: दुई मानहरूको तुलना गर्दछ र यदि बाँया पक्षको मान दायाँ पक्षको भन्दा धेरै छ भने true बूलियन डाटा प्रकार फर्काउँछ 5 > 6 // false
>= धेरै वा बराबर: दुई मानहरूको तुलना गर्दछ र यदि बाँया पक्षको मान दायाँ पक्षको भन्दा धेरै वा बराबर छ भने true बूलियन डाटा प्रकार फर्काउँछ 5 >= 6 // false
=== सख्त समानता: दुई मानहरूको तुलना गर्दछ र यदि दायाँ र बाँया पक्षका मानहरू समान छन् र समान डाटा प्रकारका छन् भने true बूलियन डाटा प्रकार फर्काउँछ। 5 === 6 // false
!== असमानता: दुई मानहरूको तुलना गर्दछ र सख्त समानता अपरेटरले फर्काउने विपरीत बूलियन मान फर्काउँछ। 5 !== 6 // true

तपाईंको ज्ञान जाँच गर्न ब्राउजरको कन्सोलमा केही तुलना लेख्नुहोस्। के कुनै फर्काइएको डाटाले तपाईंलाई अचम्मित बनायो?

If Statement

If स्टेटमेन्टले सर्त true भएमा आफ्नो ब्लकहरू बीचको कोड चलाउँछ।

if (condition) {
  //Condition is true. Code in this block will run.
}

तर्कशास्त्रीय अपरेटरहरू प्रायः सर्त बनाउन प्रयोग गरिन्छ।

let currentMoney;
let laptopPrice;

if (currentMoney >= laptopPrice) {
  //Condition is true. Code in this block will run.
  console.log("Getting a new laptop!");
}

If..Else Statement

else स्टेटमेन्टले सर्त false हुँदा आफ्नो ब्लकहरू बीचको कोड चलाउँछ। यो if स्टेटमेन्टसँग वैकल्पिक हो।

let currentMoney;
let laptopPrice;

if (currentMoney >= laptopPrice) {
  //Condition is true. Code in this block will run.
  console.log("Getting a new laptop!");
} else {
  //Condition is false. Code in this block will run.
  console.log("Can't afford a new laptop, yet!");
}

यो कोड र तलको कोडलाई ब्राउजर कन्सोलमा चलाएर तपाईंको बुझाइ जाँच गर्नुहोस्। currentMoney र laptopPrice भेरिएबलहरूको मान परिवर्तन गरेर फर्काइएको console.log() परिवर्तन गर्नुहोस्।

Switch Statement

switch स्टेटमेन्ट विभिन्न सर्तहरूमा आधारित विभिन्न कार्यहरू प्रदर्शन गर्न प्रयोग गरिन्छ। switch स्टेटमेन्ट प्रयोग गरेर धेरै कोड ब्लकहरू मध्ये एक चयन गर्न सकिन्छ।

switch (expression) {
  case x:
    // code block
    break;
  case y:
    // code block
    break;
  default:
  // code block
}
// program using switch statement
let a = 2;

switch (a) {
  case 1:
    a = "one";
    break;
  case 2:
    a = "two";
    break;
  default:
    a = "not found";
    break;
}
console.log(`The value is ${a}`);

यो कोड र तलको कोडलाई ब्राउजर कन्सोलमा चलाएर तपाईंको बुझाइ जाँच गर्नुहोस्। भेरिएबल a को मान परिवर्तन गरेर फर्काइएको console.log() परिवर्तन गर्नुहोस्।

तर्कशास्त्रीय अपरेटरहरू र बूलियनहरू

निर्णयले एक भन्दा धेरै तुलना आवश्यक हुन सक्छ, र तर्कशास्त्रीय अपरेटरहरूसँग जोडेर बूलियन मान उत्पादन गर्न सकिन्छ।

प्रतीक विवरण उदाहरण
&& तर्कशास्त्रीय AND: दुई बूलियन अभिव्यक्तिहरू तुलना गर्दछ। दुवै पक्ष true भएमा मात्र true फर्काउँछ। (5 > 6) && (5 < 6 ) //एक पक्ष false छ, अर्को true छ। false फर्काउँछ।
|| तर्कशास्त्रीय OR: दुई बूलियन अभिव्यक्तिहरू तुलना गर्दछ। कम्तीमा एक पक्ष true भएमा true फर्काउँछ। (5 > 6) || (5 < 6) //एक पक्ष false छ, अर्को true छ। true फर्काउँछ।
! तर्कशास्त्रीय NOT: बूलियन अभिव्यक्तिको विपरीत मान फर्काउँछ। !(5 > 6) // 5 6 भन्दा धेरै छैन, तर "!" ले true फर्काउँछ।

तर्कशास्त्रीय अपरेटरहरूसँग सर्तहरू र निर्णयहरू

तर्कशास्त्रीय अपरेटरहरू if..else स्टेटमेन्टहरूमा सर्तहरू बनाउन प्रयोग गर्न सकिन्छ।

let currentMoney;
let laptopPrice;
let laptopDiscountPrice = laptopPrice - laptopPrice * 0.2; //Laptop price at 20 percent off

if (currentMoney >= laptopPrice || currentMoney >= laptopDiscountPrice) {
  //Condition is true. Code in this block will run.
  console.log("Getting a new laptop!");
} else {
  //Condition is true. Code in this block will run.
  console.log("Can't afford a new laptop, yet!");
}

नकारात्मक अपरेटर

तपाईंले अहिलेसम्म देख्नुभएको छ कि कसरी if...else स्टेटमेन्ट प्रयोग गरेर सर्तात्मक तर्क सिर्जना गर्न सकिन्छ। if मा जाने कुनै पनि कुरा true/false मा मूल्याङ्कन गर्नुपर्छ। ! अपरेटर प्रयोग गरेर तपाईं अभिव्यक्तिलाई नकार्न सक्नुहुन्छ। यसले यसरी देखिन्छ:

if (!condition) {
  // runs if condition is false
} else {
  // runs if condition is true
}

टर्नरी अभिव्यक्ति

if...else निर्णय तर्क व्यक्त गर्ने एक मात्र तरिका होइन। तपाईंले टर्नरी अपरेटर भनिने केही पनि प्रयोग गर्न सक्नुहुन्छ। यसको सिन्ट्याक्स यसरी देखिन्छ:

let variable = condition ? <return this if true> : <return this if false>

तल एक स्पष्ट उदाहरण छ:

let firstNumber = 20;
let secondNumber = 10;
let biggestNumber = firstNumber > secondNumber ? firstNumber : secondNumber;

यो कोडलाई केही पटक पढ्न समय लिनुहोस्। के तपाईंलाई यी अपरेटरहरू कसरी काम गरिरहेका छन् भन्ने बुझ्न सक्नुहुन्छ?

माथिको कोडले भन्छ:

  • यदि firstNumber secondNumber भन्दा धेरै छ भने
  • त्यसपछि firstNumber लाई biggestNumber मा असाइन गर्नुहोस्।
  • अन्यथा secondNumber लाई असाइन गर्नुहोस्।

टर्नरी अभिव्यक्ति तलको कोड लेख्ने संक्षिप्त तरिका मात्र हो:

let biggestNumber;
if (firstNumber > secondNumber) {
  biggestNumber = firstNumber;
} else {
  biggestNumber = secondNumber;
}

🚀 चुनौती

पहिले तर्कशास्त्रीय अपरेटरहरूसँग लेखिएको प्रोग्राम बनाउनुहोस्, र त्यसपछि टर्नरी अभिव्यक्ति प्रयोग गरेर पुनः लेख्नुहोस्। तपाईंको मनपर्ने सिन्ट्याक्स के हो?


GitHub Copilot Agent चुनौती 🚀

Agent मोड प्रयोग गरेर निम्न चुनौती पूरा गर्नुहोस्:

विवरण: यस पाठबाट धेरै निर्णय लिने अवधारणाहरू प्रदर्शन गर्ने व्यापक ग्रेड क्यालकुलेटर बनाउनुहोस्, जसमा if-else स्टेटमेन्टहरू, switch स्टेटमेन्टहरू, तर्कशास्त्रीय अपरेटरहरू, र टर्नरी अभिव्यक्तिहरू समावेश छन्।

प्रम्ट: एउटा जाभास्क्रिप्ट प्रोग्राम लेख्नुहोस् जसले विद्यार्थीको संख्यात्मक स्कोर (0-100) लिन्छ र निम्न मापदण्डहरू प्रयोग गरेर उनीहरूको अक्षर ग्रेड निर्धारण गर्दछ:

  • A: 90-100
  • B: 80-89
  • C: 70-79
  • D: 60-69
  • F: 60 भन्दा कम

आवश्यकताहरू:

  1. अक्षर ग्रेड निर्धारण गर्न if-else स्टेटमेन्ट प्रयोग गर्नुहोस्।
  2. विद्यार्थी पास (ग्रेड >= 60) र सम्मान (ग्रेड >= 90) छ कि छैन जाँच गर्न तर्कशास्त्रीय अपरेटरहरू प्रयोग गर्नुहोस्।
  3. प्रत्येक अक्षर ग्रेडको लागि विशिष्ट प्रतिक्रिया प्रदान गर्न switch स्टेटमेन्ट प्रयोग गर्नुहोस्।
  4. विद्यार्थी अर्को पाठ्यक्रमको लागि योग्य छ कि छैन (ग्रेड >= 70) निर्धारण गर्न टर्नरी अपरेटर प्रयोग गर्नुहोस्।
  5. स्कोर 0 देखि 100 बीचमा छ भनेर सुनिश्चित गर्न इनपुट मान्यता समावेश गर्नुहोस्।

विभिन्न स्कोरहरू सहित तपाईंको प्रोग्राम परीक्षण गर्नुहोस्, जस्तै 59, 60, 89, 90, र अमान्य इनपुटहरू।

पोस्ट-लेक्चर क्विज

पोस्ट-लेक्चर क्विज

समीक्षा र आत्म-अध्ययन

प्रयोगकर्ताले प्रयोग गर्न सक्ने धेरै अपरेटरहरूको बारेमा MDN मा पढ्नुहोस्

Josh Comeau को उत्कृष्ट अपरेटर लुकअप हेर्नुहोस्!

असाइनमेन्ट

अपरेटरहरू


अस्वीकरण:
यो दस्तावेज AI अनुवाद सेवा Co-op Translator प्रयोग गरेर अनुवाद गरिएको छ। हामी शुद्धताको लागि प्रयास गर्छौं, तर कृपया ध्यान दिनुहोस् कि स्वचालित अनुवादमा त्रुटिहरू वा अशुद्धताहरू हुन सक्छ। यसको मूल भाषा मा रहेको दस्तावेजलाई आधिकारिक स्रोत मानिनुपर्छ। महत्वपूर्ण जानकारीको लागि, व्यावसायिक मानव अनुवाद सिफारिस गरिन्छ। यस अनुवादको प्रयोगबाट उत्पन्न हुने कुनै पनि गलतफहमी वा गलत व्याख्याको लागि हामी जिम्मेवार हुने छैनौं।