חזרנו! הפעם, התוכנה שלנו מכילה את אובייקט ווינסטון
אבל אנחנו מציגים רק את הגיל של ווינסטון. זה משום שאני רוצה להראות
לכם איך נוכל לשנות את הגיל של ווינסטון. כי אתם יודעים שבסופו של דבר
ווינסטון חייב להפוך למבוגר יותר. בואו ניזכר איך זה היה אם היינו
משתמשים במשתנים פשוטים. יש לנו את var winstonAge שווה ל-19
ואם נרצה לשנות את זה, נרשום winstonAge שווה ל-20.
וזה ישנה את הערך השמור במשתנה הזה. זה מאוד מאוד דומה
עבור מאפיינים של אובייקטים. נרשום: winston.age שווה ל-20, וכך שינינו
את הערך השמור במאפיין הגיל של האובייקט ווינסטון.
מגניב.
בואו נראה אם זה עבד. ניקח את פקודת ה-text, נשים אותה למטה
נשנה את מיקום ה-y, וטה-דה! ווינסטון נהיה מבוגר יותר. קלי קלות.
אוקיי, אז עכשיו ננסה.. עכשיו רק הוספנו אחד לגיל שלו
בואו נעשה את זה בצורה יותר תכנותית. נרשום: winston.age שווה winston.age ועוד 1.
מה שאנו אומרים כאן הוא - לקחת את הערך הקודם של הגיל שלו
להוסיף לו אחד, ואז לשמור את הערך החדש במאפיין הגיל.
זה אמור פשוט להוסיף אחד לערך הקודם שהיה. בואו נראה.
נציג את זה.. טה-דה! הוא בן 21.
נהיה כל כך מבוגר.. אוקיי. עכשיו, זכרו שיש לנו קיצור דרך להוספת אחד
למשתנים, ואותו קיצור דרך עובד עם מאפיינים של אובייקטים, אז נוכל לרשום: winston.age++
בואו נראה אם זה עבד. כן! וזה באמת עשה בדיוק את אותו הדבר כמו השורה הזאת
זה פשוט קיצור דרך, כדי שלא נצטרך להקליד כל כך הרבה.
אם נסתכל על כל זה, זה באמת נראה כמו מקרה המתאים ללולאה.
אנו רושמים את אותו קוד שוב ושוב, והדבר היחיד שאנו משנים זה שאנו מוסיפים אחד
לגיל שלו, ואנו משנים את מיקום ה-y כדי שזה יודפס בשורה נפרדת.
אז, אם נשתמש בלולאה, זה יהיה ממש קל להציג אותו מתבגר ומתבגר
בלי לכתוב כל כך הרבה קוד. נעשה לולאה כדי להציג את ווינסטון מתבגר עד גיל 40.
הוא לא רוצה להתבגר יותר מזה כי אז הוא יהיה מקומט
ונצטרך לקרוא לו מקומטסטון.
אוקיי.
נבנה לולאת while ונרשום: while (כל עוד) winston.age קטן או שווה ל-40
וכאן בפנים, נציג את הגיל שלו
ונוסיף אחד לגיל שלו בכל פעם.
אוקיי, זה עבד, אבל הכל מוצג אחד על השני, אז אנחנו צריכים לשנות גם את מיקום ה-y
בכל פעם. אז נרשום פשוט: winston.age כפול 20, אה, ננסה פחות 200, או פחות 300..
אוקיי! פחות 350. בסדר. זה נראה טוב. בואו נמחק את הדברים הישנים פה.
טה-דה! עכשיו אנחנו יכולים לראות את ווינסטון מתבגר יותר ויותר, אבל לא כל כך הרבה כדי להפוך למקומטסטון.
אוקיי. עכשיו כשאני יודעים לשנות גיל, אנו יכולים גם להוסיף מידע נוסף
באובייקט של ווינסטון ככל שהוא מתבגר. למשל, אולי כשהוא מגיע לגיל 30, הוא יפגוש מתכנתת אחרת
ששמה וויניפר, והוא יתחתן איתה.
ולא, הוא לא יתחתן איתה רק כי יש לה שם כזה אדיר.
מה שאנו יכולים לעשות זה להוסיף מאפיין, פשוט כך -
winston, נקודה, ואז המפתח של המאפיין החדש, שנקרא לו wife, והערך שלו שווה "Winnefer".
מצוין, אבל אנחנו רוצים שתהיה לו אישה רק כשהוא בגיל טוב לנישואים
אז נאמר שאם זה שווה 30.. ונזיז את החלק הזה לכאן פנימה.
נהדר. עכשיו יש לו אישה, הם מאושרים, ואחר כך יש להם ילדים
כמה שנים אחר כך, אז נניח כשהם בני 32, נוסיף כמה ילדים לאובייקט
כדי לעקוב אחרי זה. ויש להם תאומים, כמובן, כי הם מאוד יעילים
ולתאומים שלהם נקרא, כמובן, ווינסטון ג'וניור, ווינסטוניה.
יפה. זו משפחה נהדרת, עם שמות נהדרים.
וכך אתם רואים שאנו יכולים להוסיף מאפיינים חדשים, מחרוזות ומערכים
וכל דבר שהיה יכול להיות באובייקט המקורי.
ברגע שהלולאה מסתיימת, winston.age יהיה 40, ואז לווינסטון תהיה
אישה, וויניפר, וילדים תאומים, שהם מערך של שני שמות.
זו לולאה מצוינת. אבל, אם אתם לא אוהבים את איך שהסיפור הזה נגמר בשביל ווינסון,
אתם תמיד יכולים לשנות את התוכנית (ליצור spin-off) ולספר סיפור משלכם על העתיד שלו,
עכשיו כשאתם יודעים הכל על איך לשנות מאפיינים של אובייקטים.