8.5 KiB
יסודות JavaScript: מערכים ולולאות
איור מאת Tomomi Imura
חידון לפני השיעור
השיעור הזה עוסק ביסודות של JavaScript, השפה שמוסיפה אינטראקטיביות לאתרי אינטרנט. בשיעור זה תלמדו על מערכים ולולאות, המשמשים לעיבוד נתונים.
🎥 לחצו על התמונות למעלה לצפייה בסרטונים על מערכים ולולאות.
ניתן ללמוד את השיעור הזה גם ב-Microsoft Learn!
מערכים
עבודה עם נתונים היא משימה נפוצה בכל שפה, והיא הופכת לקלה יותר כאשר הנתונים מאורגנים בפורמט מבני, כמו מערכים. במערכים, הנתונים נשמרים במבנה דמוי רשימה. אחד היתרונות המרכזיים של מערכים הוא שניתן לשמור בהם סוגי נתונים שונים.
✅ מערכים נמצאים סביבנו כל הזמן! האם תוכלו לחשוב על דוגמה מהחיים האמיתיים למערך, כמו מערך של לוחות סולאריים?
התחביר של מערך הוא זוג סוגריים מרובעים.
let myArray = [];
זהו מערך ריק, אך ניתן להכריז על מערכים שכבר מכילים נתונים. ערכים מרובים במערך מופרדים באמצעות פסיק.
let iceCreamFlavors = ["Chocolate", "Strawberry", "Vanilla", "Pistachio", "Rocky Road"];
לערכי המערך מוקצה ערך ייחודי שנקרא אינדקס, שהוא מספר שלם שמוקצה בהתאם למרחקו מתחילת המערך. בדוגמה למעלה, לערך המחרוזת "Chocolate" יש אינדקס 0, ולאינדקס של "Rocky Road" יש ערך 4. ניתן להשתמש באינדקס עם סוגריים מרובעים כדי לאחזר, לשנות או להוסיף ערכים למערך.
✅ האם מפתיע אתכם שמערכים מתחילים באינדקס אפס? בשפות תכנות מסוימות, אינדקסים מתחילים ב-1. יש לכך היסטוריה מעניינת, עליה תוכלו לקרוא בוויקיפדיה.
let iceCreamFlavors = ["Chocolate", "Strawberry", "Vanilla", "Pistachio", "Rocky Road"];
iceCreamFlavors[2]; //"Vanilla"
ניתן להשתמש באינדקס כדי לשנות ערך, כך:
iceCreamFlavors[4] = "Butter Pecan"; //Changed "Rocky Road" to "Butter Pecan"
ואפשר להוסיף ערך חדש באינדקס מסוים כך:
iceCreamFlavors[5] = "Cookie Dough"; //Added "Cookie Dough"
✅ דרך נפוצה יותר להוסיף ערכים למערך היא באמצעות אופרטורים כמו array.push().
כדי לגלות כמה פריטים יש במערך, השתמשו במאפיין length
.
let iceCreamFlavors = ["Chocolate", "Strawberry", "Vanilla", "Pistachio", "Rocky Road"];
iceCreamFlavors.length; //5
✅ נסו בעצמכם! השתמשו בקונסול של הדפדפן כדי ליצור ולשנות מערך משלכם.
לולאות
לולאות מאפשרות לנו לבצע משימות חוזרות או איטרטיביות, ויכולות לחסוך זמן רב וקוד. כל איטרציה יכולה להשתנות במשתנים, ערכים ותנאים. ישנם סוגים שונים של לולאות ב-JavaScript, ולכולן הבדלים קטנים, אך ביסודו של דבר הן עושות את אותו הדבר: חוזרות על נתונים.
לולאת For
לולאת for
דורשת 3 חלקים כדי לבצע איטרציה:
counter
משתנה שמתחיל בדרך כלל במספר שסופר את מספר האיטרציותcondition
ביטוי שמשתמש באופרטורים להשוואה כדי לגרום ללולאה להפסיק כאשר הואfalse
iteration-expression
רץ בסוף כל איטרציה, ומשמש בדרך כלל לשינוי ערך ה-counter
// Counting up to 10
for (let i = 0; i < 10; i++) {
console.log(i);
}
✅ הריצו את הקוד הזה בקונסול של הדפדפן. מה קורה כשאתם מבצעים שינויים קטנים ב-counter, בתנאי או בביטוי האיטרציה? האם תוכלו לגרום ללולאה לרוץ אחורה, וליצור ספירה לאחור?
לולאת While
בניגוד לתחביר של לולאת for
, לולאות while
דורשות רק תנאי שיגרום ללולאה להפסיק כאשר התנאי יהפוך ל-false
. תנאים בלולאות בדרך כלל מסתמכים על ערכים אחרים כמו counters, ויש לנהל אותם במהלך הלולאה. ערכי התחלה ל-counters חייבים להיווצר מחוץ ללולאה, וכל ביטוי שעונה על תנאי, כולל שינוי ה-counter, חייב להתבצע בתוך הלולאה.
//Counting up to 10
let i = 0;
while (i < 10) {
console.log(i);
i++;
}
✅ מדוע תבחרו בלולאת for לעומת לולאת while? 17 אלף צופים שאלו את אותה שאלה ב-StackOverflow, וחלק מהדעות עשויות לעניין אתכם.
לולאות ומערכים
מערכים משמשים לעיתים קרובות עם לולאות מכיוון שרוב התנאים דורשים את אורך המערך כדי להפסיק את הלולאה, והאינדקס יכול לשמש גם כערך ה-counter.
let iceCreamFlavors = ["Chocolate", "Strawberry", "Vanilla", "Pistachio", "Rocky Road"];
for (let i = 0; i < iceCreamFlavors.length; i++) {
console.log(iceCreamFlavors[i]);
} //Ends when all flavors are printed
✅ נסו להתנסות בלולאה על מערך משלכם בקונסול של הדפדפן.
🚀 אתגר
ישנן דרכים נוספות ללולאה על מערכים מלבד לולאות for ו-while. ישנן forEach, for-of, ו-map. שכתבו את הלולאה שלכם על מערך באמצעות אחת מהטכניקות הללו.
חידון אחרי השיעור
סקירה ולימוד עצמי
למערכים ב-JavaScript יש שיטות רבות שמצורפות אליהם, והן שימושיות מאוד לעיבוד נתונים. קראו על השיטות הללו ונסו כמה מהן (כמו push, pop, slice ו-splice) על מערך משלכם.
משימה
כתב ויתור:
מסמך זה תורגם באמצעות שירות תרגום מבוסס בינה מלאכותית Co-op Translator. בעוד שאנו שואפים לדיוק, יש להיות מודעים לכך שתרגומים אוטומטיים עשויים להכיל שגיאות או אי-דיוקים. המסמך המקורי בשפתו המקורית צריך להיחשב כמקור הסמכותי. למידע קריטי, מומלץ להשתמש בתרגום מקצועי על ידי מתרגם אנושי. איננו נושאים באחריות לכל אי-הבנה או פרשנות שגויה הנובעת משימוש בתרגום זה.