לולאת FOR בשפת JavaScript

לולאת FOR בשפת JavaScript

  • פרסומת

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

אופן הפעולה

הדיאגרמה הבאה מציגה את אופן הפעולה של הלולאה. כפי שניתן לראות, החלק הראשון מגדיר את המונה (counter). לאחר מכן נבדק התנאי (condition) ובמידה והוא מאומת, הקוד שבתוך הלולאה (conditional code) מופעל והמונה מוגדל. לאחר מכן התנאי נבדק שוב וחוזר חלילה, עד שהתנאי לא מאומת והלולאה נעצרת.

לולאת פור (for loop) בשפת JavaScript

מבנה הפונקציה:

for( var i = 0; i < 10; i++ ) 
{
    document.write("The number is:" + i);
    document.write("<br />");
}

הקוד יניב את הפלט הבא:

The number is:0<br />
The number is:1<br />
The number is:2<br />
The number is:3<br />
The number is:4<br />
The number is:5<br />
The number is:6<br />
The number is:7<br />
The number is:8<br />
The number is:9

בואו נתמקד בשורה הראשונה:

for(var i = 0; i < 10; i++)
  • var i=0; תחילה אנו מגדירים את המשתנה, ואת המספר ההתחלתי של הסדרה. במקרה שלנו 0.
  • i<10; שנית אנו מגדירים את הקצה (או הסוף) של הסדרה, במקרה שלנו i קטן מ-10. שימו לב שהספרה הסופית תהיה 9 ולא 10 מסיבה זאת.
  • i++ לבסוף אנו קובעים את המעריך, כלומר במה יוכפל המספר בכל פעם שהפונקציה חוזרת על עצמה. במקרה שלנו אנו מוסיפים 1 בכל פעם (i++).

מה שנכתב בתוך הפונקציה, יתבצע מחדש בכל פעם שהפונקציה תחזור על עצמה:

document.write("The number is:" + i);
document.write("<br />");

כאן אנו אומרים לפונקציה לכתוב The number is ולהוסיף את המספר הנוכחי (i) ולרדת שורה ולחזור על כך בכל פעם שהלולאה חוזרת על עצמה.

דוגמאות נוספות לשימוש בלולאת FOR:

סידרה של מספרים בקפיצות של 2:

for(var i=0;i<=50;i+=2) 
{
    document.write(i + ",");
}

הפלט של הפונקציה ייראה כך:

0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50...

סידרה של מספרים המתחלקים ב-3:

for(var i=0;i<=100;i+=3) 
{
    document.write(i + ",");
}

הפלט של הפונקציה ייראה כך:

0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45,48,51,54,57,60,63,66,69,72,75...

סידרה של מספרים ראשוניים

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

for(var i=1;i<=100;i++) { if(i>2) {
    var prime="no";
    for(var num=2;num<i;num++) {
      if(i%num==0) {
        prime="no";
        break;
      }
      else {
        prime="yes";
      }
    }
    if(prime=="yes") document.write(i + ",");
  }
  else document.write(i + ",");
}

הפלט של הפונקציה ייראה כך:

1,2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97...