Get Adobe Flash player
דף הבית לולאות לולאת for

לולאות הן חלק חשוב משפת JavaScript. הלולאות מבצעות בלוק של קוד לאורך מספר פעמים שנקבע מראש או כל עוד תנאי מסוים מתקיים.

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

ב JavaScript משתמשים בשני סוגי לולאות:

לולאת for: מריץ בלוק מסוים במשך מספר ידוע של פעמים

לולאת while: מריץ בלוק מסוים כל עוד תנאי מסויים מחזיר true.

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

לולאת for

בלולאת for תשתמש כאשר מספר הפעמים על פיו יש להריץ את פיסת הקוד - ידוע.

תחביר:

for (var=ערך ראשוני;var<=ערך סופי;var=קידום הערך)
{
הקוד שיבוצע
}

הסבר:

התחביר כולל את הפקודה for, ומשתנה המלווה את קידום המונה שסופר את מספר הפעמים שהקוד רץ. למשתנה יש שלושה ערכים הנמצאים בתוך סוגריים:

  • הערך הראשוני - הקצאת הערך של תחילת ריצת הקוד - למשתנה
  • הערך השני הוא הערך הסופי - הערך שבו הריצה תיעצר
  • הערך שבו המשתנה גדל כל ריצה

הערות:

  • השוואת המשתנה לערך הסופי, יכולה להיות כל אופרטור השוואתי (שווה, גדול, קטן, גדול-שווה וכו')
  • קידום הערך יכול להיות בכל קפיצה שתיקבע, חיובית או שלילית.

דוגמא א:

<html>
<body>
<script type="text/javascript">
var i=0;
for (i=0;i<=5;i++)
{
document.write("המספר הוא " + i);
document.write("<br />");
}
document.write("סוף הריצה");
</script>
</body>
</html>

הסבר:

תחילת הקוד היא בהכרזת משתנה i, ואיפוסו (הקצאה ל- 0). האיפוס נועד להקצאת ערך 0 למשתנה, כי יתכן שיש בו ערך אחר מריצה קודמת.

כעת מתחילה הלולאה. מיד אחרי הפקודה for, נפתחים סוגרים עם שלושת הפרמטרים:

  • הקצאת ערך תחילי ללולאה. בדוגמא זו הוקצה את הערך 0, אך אפשר היה להקצות כל ערך אחר (בתנאי שיהיה קטן או שווה מהערך הסופי של הלולאה)
  • בדיקת ערך המשתנה i. כל עוד שהוא קטן מ-5, הלולאה תמשיך להתקדם
  • כאשר הלולאה תחזור אחרי הסיבוב הראשון, i יקודם ב-1. אם ערכו 0, הוא יגדל ל-1

אחרי הבדיקה, מתבצעים שני משפטי הכתיבה. בתחילה ייכתב "המספר הוא 0", אחרי כן תתבצע ירידת שורה (הפקודה <br>). מאחר שערך i עדיין קטן מ-5, הקוד חוזר ומתבצע מחדש. כעת i יקודם ויהיה 1. הלולאה ממשיכה, וכעת נכתבת השורה: "המספר הוא 1", והלולאה תתחיל מחדש.

הקוד ירוץ בלולאה ועל מסך תכתבנה השורות עד אשר הערך יגיע ל-5 והלולאה תיעצר.

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

דוגמא ב' 

<html>
<body>
<script type="text/javascript">
var i=0;
for (i=1;i<=6;i++)
{
document.write("<h" + i + ">טקסט בסגנון H" + i + "<h" + i + ">");
}
</script>
</body>
</html>

הסבר:

בסקריפט שבדוגמא ב', הלולאה מתחילה לרוץ כשערך i הוא 1, ומסיימת כשהוא מגיע ל- 6. הערך של i מוצב בכל פעם מחדש במשפט הכתיבה, והתוצאה היא סדרת כותרות בגודל משתנה, המופיעה על המסך.

אל השיעור הקודם אל השיעור הבא