JavaScript/תנאי מורכב if-else

מתוך ויקיספר, אוסף הספרים והמדריכים החופשי
קפיצה לניווט קפיצה לחיפוש
JavaScript

התחלת העבודה

הוראת תנאי

לולאות

מערכים ומיונים

פונקציות

אובייקטים

JavaScript למתקדמים

ספריות

JavaScript למתקדמים


גרסה להדפסה

אנו משתמשים בהתניה מורכבת על מנת לבדוק משהו ולתת פלט בהתאם (בשונה מהתניה פשוטה, לתת פלט גם אם התנאי לא מתקבל).

בדיקת מספר[עריכה]

קוד[עריכה]

<script language="javascript">
var a=1;
if(a==2)  //  בדיקה אם איי שווה ל-2
    { 
       document.write("a שווה 2");
    }
else
    {
      document.write("a לא שווה 2");
    }
</script>

הסבר[עריכה]

אם a שווה 2:

  • תדפיס "a שווה 2"

אחרת (אם התנאי הראשון לא מתקבל):

  • תדפיס "a לא שווה 2"

תוצאה[עריכה]

a לא שווה 2

זוגי או אי-זוגי[עריכה]

קוד[עריכה]

<script language="javascript">
num=3;
if(num%2==0)
    {
       document.write("מספר זוגי");
    }
else
    {
        document.write("מספר אי זוגי");
    }
</script>

תוצאה[עריכה]

מספר אי זוגי

הסברים[עריכה]

בדוגמא זו ישנה בדיקת שארית, כלומר: האם num מתחלק ב-2? --אם כן: כתוב מספר זוגי --אחרת כתוב: מספר אי זוגי

הסברים נוספים לגבי דוגמא זו תמצאו בפרק "אופרטורים" ובכל מקרה, אתם יכולים לשאול שאלה בדף השיחה.

עוד על קינון[עריכה]

אם אני מדלג ישר לשאלה המעשית, שאז גם המילה קינון תהיה ברורה דרך הדוגמא, השאלה היא כזו: בסולם ...if - else - if - else, כאשר לא לכל if יש else, איך יודעים לאיזה if מתיחס כל else? התשובה היא שכל else מתיחס ל if האחרון לפניו שלא היה לו else. אם תמיד מוסיפים סוגרים מסולסלים אז הסולם נעשה ברור יותר:

if (condition) 
        if (condition)  { statement; }
    else  { statement; }  //  לאיזה if מבין השנים ה else מתיחס?

הוא כמו

if (condition)
    {
        if (condition)  { statement; }
        else  { statement; }
    }

, רק שהסוגריים המסולסלים מאפשרים גם למי שלא יודע את הכלל להבין את המשמעות. כאן ניסיתי להראות זאת גם על ידי הזחה. ל if הראשון אין else.