0:00:01.686,0:00:04.237 אבן חן, אבן חן די מתוקה! 0:00:04.237,0:00:08.275 אבל אתם יודעים מה יותר טוב מאבן אחת, שורה שלמה של אבני חן! 0:00:08.275,0:00:12.562 וכמובן, עכשיו אנחנו יודעים את הדרך הטובה ביותר ליצור שורה של אבני חן, בעזרת לולאה. 0:00:12.562,0:00:16.162 אז בואו נשתמש בלולאה כדי ליצור 12 אבני חן בשורה. 0:00:16.162,0:00:19.523 משמאל לימין על פני המסך. 0:00:19.523,0:00:22.304 אז כך 0:00:22.304,0:00:31.186 for(var i שווה 0; i פחות מ- 12;i פלוס פלוס) 0:00:31.186,0:00:36.429 ואנחנו ניקח את השורה הזאת ונעביר לכאן. 0:00:36.429,0:00:40.305 אז עכשיו יש לנו 12 אבנים אבל הם בעצם כולם נערמו ממש אחד מעל השני. 0:00:40.305,0:00:43.401 זכרו, אנחנו רוצים אותם לאורך המסך. 0:00:43.401,0:00:45.941 זה אומר שאנחנו רוצים לשנות את ה-X 0:00:45.941,0:00:49.524 36 זה ה-X עכשיו, אבל אנחנו רוצים אותו שונה בכל פעם. 0:00:49.524,0:00:51.859 זה אומר שאנחנו רוצים שהוא יהיה תלוי ב-i 0:00:51.859,0:00:56.329 אז מה שנוכל לעשות זה פשוט לכתוב i כפול 36 . 0:00:56.329,0:01:02.687 אז הראשון הוא ב 0, ולאחר מכן 36, אז 72, וכו'. 0:01:02.687,0:01:04.575 מגניב! עכשיו יש לנו שורה של אבני חן. 0:01:04.575,0:01:07.997 וזה סוג של מזכיר לי את הסצנות האלה [br]באינדיאנה ג'ונס או אלדין 0:01:07.997,0:01:11.306 שבו הגיבור מגלה אוצר מתחת לאדמה [br]של אבני חן 0:01:11.306,0:01:13.732 אבל הם בדרך כלל מוצאים הרבה יותר אבני חן מזה. 0:01:13.732,0:01:17.306 לא רק שורה של אבני חן, אלא ערימה של אבני חן! 0:01:17.306,0:01:21.609 אז איך נוכל לגרום לאבני החן לרדת 0:01:21.609,0:01:24.806 כל הדרך לתחתית המסך? 0:01:24.806,0:01:30.639 ובכן אנחנו יכולים להתחיל על ידי חזרה על הלולאה בעזרת העתק הדבק. 0:01:30.639,0:01:34.565 ולשנות את ה-Y בכל פעם 0:01:34.565,0:01:37.688 ונשנה את זה ל-60 ואז -90. 0:01:37.688,0:01:42.308 ועכשיו יש לנו שלוש שורות של אבני חן, מגניב. 0:01:42.308,0:01:45.495 אך זה נהיה ממש משעמם כיוון שכל מה שאני עושה זה 0:01:45.495,0:01:49.193 העתק הדבק ושינוי דבר אחד קטן. 0:01:49.193,0:01:52.859 ובדרך כלל בעבר כאשר מצאנו את עצמנו כותבים קוד שחוזר על עצמו כמו זה 0:01:52.859,0:01:57.025 היינו חושבים, "אולי פשוט נשתמש בלולאה במקום" 0:01:57.025,0:01:58.607 אבל אנחנו כבר משתמשים בלולאה. 0:01:58.607,0:02:03.854 אז מה הפיתרון כדי להימנע מלכתוב כך, אתם יודעים, העתק-הדבק? 0:02:03.854,0:02:09.518 ובכן לזה אנחנו קוראים "לולאה מקוננת", לולאה בתוך לולאה 0:02:09.518,0:02:12.132 אז מה שאנחנו הולכים לעשות זה להכין לולאה חיצונית 0:02:12.132,0:02:14.851 וזה מה שהולך לדאוג לירידה לתחתית המסך 0:02:14.851,0:02:19.234 והלולאה הפנימית שלנו תדאג לעשות את מה שהיא עושה עכשיו 0:02:19.234,0:02:21.977 שזה ללכת משמאל לימין. 0:02:21.977,0:02:24.006 תנו לי להראות לכם למה אני מתכוונת. 0:02:24.006,0:02:29.851 אז לולאת for - ונשתמש במשתנה אחר הפעם, נקרא לו j , כיוון ואנחנו כבר משתמשים ב-i 0:02:29.851,0:02:37.274 for(var j שווה 0; j פחות מ- 13; j פלוס פלוס) 0:02:37.274,0:02:41.999 אוקיי, אז זו הולכת להיות הלולאה החיצונית שלנו, שאחראית על הולכה מלמעלה למטה. 0:02:41.999,0:02:48.237 ואז אנחנו רק הולכים לקחת אחת מהלולאות הקודמות שלנו ולשים אותה בפנים 0:02:48.237,0:02:53.274 ולתקן את מה שלא נחוץ, נמחק את הישנות. 0:02:53.274,0:02:59.109 אז עכשיו יש לנו את כולם נערמו על גבי שורה אחת. 0:02:59.109,0:03:01.969 אז אנחנו רוצים לשנות את ה-Y , נכון? 0:03:01.969,0:03:04.309 זה מה ששינינו מקודם, כאשר עשינו העתק-הדבק 0:03:04.309,0:03:06.108 ועכשיו, ה-Y תמיד 90 0:03:06.108,0:03:09.440 אנחנו רוצים ש-Y ישתנה בכל שורה. 0:03:09.440,0:03:16.188 זה בדיוק כמו ש-X תלוי ב-i, אנחנו רוצים את Y שיהיה תלוי ב-j. 0:03:16.188,0:03:24.663 נוכל ללכת קדימה ולשנות את זה למשהו כמו, אולי, j כפול 30. 0:03:24.663,0:03:29.934 מעולה! כל כך הרבה אבני חן! 0:03:29.934,0:03:31.776 בואו נראה מה זה עושה, שוב. 0:03:31.776,0:03:38.340 הלולאה החיצונית יוצרת משתנה j ומגדילה אותו עד 13. 0:03:38.340,0:03:44.340 בכל ביצוע של הלולאה החיצונית, זה מריץ את הלולאה הפנימית. 0:03:44.340,0:03:48.673 הלולאה הפנימית יוצרת משתנה i שגדל עד ל-12. 0:03:48.673,0:03:55.358 ובעבור כל ביצוע של הלולאה הפנימית, היא מציירת תמונה במיקום x ו-y שמבוסס על i ו-j. 0:03:55.358,0:03:59.607 וה-i משתנה בתדירות גבוה יותר מה-j בגלל זה 0:03:59.607,0:04:05.238 בכדי לנסות להבין זאת אפילו טוב יותר, בואו ננסה להמחיש את ערכי i ו-j . 0:04:05.238,0:04:09.277 אז מה שאני יעשה זה תגובה מתוך תמונה 0:04:09.277,0:04:12.027 ואז קבע צבע מילוי 0:04:12.027,0:04:16.796 ואני הולכת להשתמש בפקודת text כדי להראות את ערכו של j - אז text j 0:04:16.796,0:04:22.025 ואני אכתוב את זה בנקודה המתאימה. אוקיי 0:04:22.025,0:04:26.009 עכשיו נוכל לראות j הולך מ-0 ל-12. 0:04:26.009,0:04:32.019 זהו בעצם איפה שהשורות של אבניהחן שלנו הוצבו גם כן. 0:04:32.019,0:04:35.684 עכשיו נמחיש את i ונראה איך זה משתנה 0:04:35.684,0:04:43.066 אז ל-i, נבחר צבע שונה. 0:04:43.066,0:04:46.475 נשים את ה-i במקומו 0:04:46.475,0:04:50.271 נשנה את ה-x שלו כדי שילך לאורך כל המסך. 0:04:50.271,0:04:54.688 נעשה אותו דבר עם y. 0:04:54.688,0:04:59.561 עכשיו נוכל לראות ש-i הולך מ-0 ל-11 0:04:59.561,0:05:04.686 וה-i כפי שאמרתי, משתנה בתדירות גבוהה יותר. 0:05:04.686,0:05:08.778 ושורה זו של הקוד מבוצעת הרבה יותר פעמים מהשורה הזו של הקוד. 0:05:08.778,0:05:13.855 כיוון ושורה זו של הקוד מבוצעת בכל ביצוע של הלולאה הפנימית. 0:05:13.855,0:05:19.527 בעוד שהשורה הזאת של הקוד מבוצעת רק עבור ביצוע של הלולאה החיצונית. 0:05:19.527,0:05:22.140 אז זאת המחשה של i ו-j 0:05:22.140,0:05:26.973 בתקווה שזה עזר לכם להבין טוב יותר מה קורה בלולאות מקוונות. 0:05:26.973,0:05:30.475 עכשיו בואו נחזיר את אבני החן, כיוון והן מגניבות יותר! 0:05:30.475,0:05:34.066 אז יש הרבה שתוכלו לעשות בעזרת לולאות for מקוונות 0:05:34.066,0:05:37.232 אם אתם רק תחשבו על כל דבר בעולם 0:05:37.232,0:05:39.599 שנראה כמו לוח דו מימדי, כמו לוח שחמט, 0:05:39.599,0:05:44.564 הכוכבים על דגל ארה"ב, דפוסים וטפטים מגניבים 0:05:44.564,0:05:47.462 כדי להתחיל את הדמיון שלכם, פשוט שחקו עם הקוד הזה 0:05:47.462,0:05:49.806 כמו על ידי שינוי התמונה. 0:05:49.806,0:05:53.796 אני אתחיל בשינוי התמונה ללב! 0:05:53.796,0:05:57.796 כדי להראות לכם כמה אני אוהבת לולאות for מקוננות!