נגישות       נגישות
שינוי גודל טקסט:
א א א
שינוי צבעי האתר:
? מקשי קיצור:

לחיצה חוזרת ונשנית על המקש Tab תעביר אתכם בין הקישורים והאזורים השונים בעמוד.

הפעלת מקשי הקיצור תלויה בדפדפן שבו אתם משתמשים.

Internet Explorer, Chrome ובגרסאות ישנות של Firefox: לחצו על מקש Alt ועל מקש המספר או האות על-פי הרשימה. ב Firefox 3 ומעלה: לחצו על המקשים Alt + Shift + המספר או האות.

S - עבור לתוכן הדף
L - חיפוש
1- עמוד הבית
2 - פרוייקטים
3 - מדריכים
4 - אודות
5 - צרו קשר
6 - הצהרת נגישות
 

בחירה בין חלופות ב-JavaScript באמצעות if ו-else

מחבר:
בתאריך:

משפטי תנאי משמשים כשעלינו לבחור בין אפשרויות. אם תנאי א' מתקיים אז לעשות משהו אחד, ואם תנאי ב' אז לעשות משהו אחר.

כך נכתוב תנאי פשוט:

if(תנאי) {
  // קוד לביצוע
}

בדוגמה הבאה, ערכו של המשתנה myNumber הוא 42, והתנאי אומר שאם המשתנה גדול מ-13 אז להקפיץ פופ-אפ שאומר "המספר גדול מ-13" :

var myNumber = 42;
 
// התנאי
if(myNumber > 13) {
  // קוד לביצוע אם התנאי מתקיים
  alert("המספר גדול מ-13");
}

הסקריפט יקפיץ למסך את הפופ-אפ הבא:

סקריפט JavaScript מדגים שימוש בתנאי if

מצד שני, אם ערך המשתנה myVar יהיה נמוך מ-13 אז שום דבר לא יקרה והקוד שנמצא בין הסוגריים המסולסלים לא ייצא אל הפועל.

בדוגמה הבאה, ערכו של myVar הוא 1:

var myNumber = 1;
 
// התנאי
if(myNumber > 13) {
  // קוד לביצוע אם התנאי מתקיים
  alert("המספר גדול מ-13");
}

כשנריץ את הסקריפט הקוד לא יתבצע (ושום פופ-אפ לא יקפוץ) בגלל שהתנאי לא התקיים.

 

else – המשלים של if

כדי לבצע פעולה אחרת במידה והתנאי לא מתקיים, משתמשים ב- else .

בדוגמה הבאה, אם המספר גדול מ-13 מקפיצים פופ-אפ עם הודעה מסוימת, אחרת מקפיצים פופ-אפ עם הודעה אחרת.

var myNumber = 1;
 
// התנאי
if(myNumber > 13) {
  // קוד לביצוע אם התנאי מתקיים
  alert("המספר גדול מ-13");
} else {
  // קוד לביצוע במידה והתנאי אינו מתקיים
  alert("המספר קטן מ-13");
}

והתוצאה:

סקריפט JavaScript מדגים שימוש בתנאי if else

בגלל שהתנאי אינו מתקיים, יוקפץ פופ-אפ שאומר "המספר קטן מ-13" .

 

סוגי השוואות ב-JavaScript

עד עכשיו ראינו השוואה של "גדול מ" באמצעות הסימן < .

כדי להשוות בין שני משתנים ולבדוק האם הם שווים, משתמשים בפעמיים שווה.

==

לדוגמה, הקוד הבא ששואל האם המשתנה שווה ל-42.

var myNumber = 42;
 
// התנאי בודק האם המשתנה שווה
if(myNumber == 42) {
  // קוד לביצוע אם התנאי מתקיים
  alert("BINGO!!");
}

והתוצאה היא בהתאם:

סקריפט JavaScript מדגים שימוש בתנאי if והאם שני משתנים שווה

כדי לשאול האם שני משתנים שונים משתמשים בסימן קריאה שווה:

!=

בסקריפט הבא, אנו שואלים האם ערכו של המשתנה myLang שונה מ- javascript .

var myLang = 'javascript';
 
// תנאי שבודק האם הערכים שונים
if(myLang != 'javascript') {
  alert("הגיע הזמן ללמוד");
}

ומכיוון שהערכים אינם שונים, התנאי לא מתקיים, והקוד לא מתבצע.

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

var myLang = 'JavasSript';
 
// תנאי שבודק האם הערכים שונים
if(myLang != 'javascript') {
  alert("הגיע הזמן ללמוד");
}

כתוצאה מהקוד הפופ-אפ יקפוץ. כך זה ייראה:

סקריפט JavaScript מדגים שימוש בתנאי if השוואה של מחרוזות

מזה אנו יכולים ללמוד שני דברים:

  1. שאפשר להשוות מחרוזות של טקסט ולא רק מספרים.
  2. ש-JavaScript מתחשב באותיות קטנות לעומת גדולות.

 

קטן שווה וגדול שווה

עוד השוואה שחייבים לדעת מאפשרת לנו לשאול האם ערך הוא קטן או שווה ל. לדוגמה, האם 6 קטן או שווה מ-7.

var a = 6;
var b = 7;
 
if(a <= b) {
  alert(a + "קטן שווה מ- " + b);
} else {
  alert(a + "לא קטן שווה מ " + b);
}

כשנריץ את הקוד נקבל את הפופ-אפ שאומר ש-6 קטן שווה מ-7.

סקריפט JavaScript מדגים שימוש בתנאי if השוואה מסוג קטן שווה

באותה מידה, אפשר להשתמש ב-=< (גדול שווה).

 

מה עושים כשיש יותר משתי אפשרויות?

מה שראינו עד כה הוא מצב שבו יש שתי אפשרויות בלבד: אמת או שקר. true או false. התנאי מתקיים או שאינו מתקיים.

ייתכנו מקרים שבהם יהיו לנו יותר משתי אפשרויות, ובשביל זה המציאו את else if .

כך נראה המקרה הכללי:

if(תנאי){
   // קוד
} else if(תנאי נוסף) {
   // קוד חלופי
} else {
   // קוד ברירת מחדל
}

  • את התנאי הראשון יוצרים באמצעות if .
  • את התנאים הנוספים מוסיפים באמצעות else if .
  • ואת התנאי האחרון (שמהווה ברירת מחדל) מוסיפים באמצעות else .

בדוגמה הבאה מבררים האם ערכו של המשתנה animal הוא קוף, פרה או שפן. ואם לא מצליחים, אז מקפיצים פופ-אפ ששואל "מה זה?"

var animal = "תרנגולת";
 
// התנאי הראשון תמיד מתחיל עם if
if (animal == "פרה"){
  alert( "יה, פרה!");
} else if(animal == "שפן") {
   // לצורך התנאים הנוספים משתמשים בelse if
  alert( "יה, שפן!");
} else if(animal == "קוף") {
  alert("קוף אחרי בנאדם!");
} else {
   // else ובסוף ברירת המחדל
  alert("מה זה?");
}

התוצאה של הרצת הקוד היא שיוקפץ פופ-אפ שעליו כתוב "מה זה?"

סקריפט JavaScript שמדגים if, else, else if

 

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

 

לכל מדריכי ה-javascript

הוסף תגובה חדשה

 

= 6 + 4