[Script Info] Title: [Events] Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text Dialogue: 0,0:00:01.33,0:00:03.80,Default,,0000,0000,0000,,כתבתי תוכנה כדי לספר לכם פרטים עסיסיים Dialogue: 0,0:00:03.80,0:00:07.47,Default,,0000,0000,0000,,על ווינסטון, אבל לא יותר מדי כי ווינסטון מעדיף לשמור על קצת Dialogue: 0,0:00:07.47,0:00:11.87,Default,,0000,0000,0000,,מסתורין. זו פשוט הדרך של ווינסטון. אז, בואו Dialogue: 0,0:00:11.87,0:00:15.33,Default,,0000,0000,0000,,נראה איך כתבתי את התוכנה הזו. יצרתי כמה משתנים למעלה, כדי לשמור Dialogue: 0,0:00:15.33,0:00:20.03,Default,,0000,0000,0000,,חלקי מידע עליו. המשתנה הראשון מחזיק מספר - הגיל שלו, המשתנה השני מחזיק Dialogue: 0,0:00:20.03,0:00:23.96,Default,,0000,0000,0000,,מחרוזת - צבע העיניים שלו, המשתנה השלישי מחזיק מערך של מחרוזות, Dialogue: 0,0:00:23.96,0:00:27.91,Default,,0000,0000,0000,,שהם דברים שהוא אוהב לעשות, ושני המשתנים האחרונים מחזיקים Dialogue: 0,0:00:27.91,0:00:31.57,Default,,0000,0000,0000,,מחרוזות המתארות היכן הוא נולד. Dialogue: 0,0:00:31.57,0:00:35.94,Default,,0000,0000,0000,,אחר כך כאן למטה, הדפסתי כל אחד מהמשתנים באמצעות פקודת ה-text, ועל ידי שימוש בשם המשתנה. Dialogue: 0,0:00:35.94,0:00:39.70,Default,,0000,0000,0000,,וכמובן בשביל המערך, אני צריכה לגשת לכל איבר במערך Dialogue: 0,0:00:39.70,0:00:43.45,Default,,0000,0000,0000,,באמצעות סוגריים מרובעים. מגניב. עכשיו Dialogue: 0,0:00:43.45,0:00:48.64,Default,,0000,0000,0000,,כל חמשת המשתנים האלו מתארים מידע על אותו הדבר - ווינסטון. Dialogue: 0,0:00:48.64,0:00:51.60,Default,,0000,0000,0000,,אבל המשתנים לא יודעים שהם קשורים לאותו הדבר. Dialogue: 0,0:00:51.60,0:00:55.50,Default,,0000,0000,0000,,ואתם יודעים, בשפת Javascript, כשאתם רוצים Dialogue: 0,0:00:55.50,0:00:59.29,Default,,0000,0000,0000,,לשמור מספר חלקי מידע קשורים, יש לנו דרך טובה יותר Dialogue: 0,0:00:59.29,0:01:03.12,Default,,0000,0000,0000,,לשמור אותם - דרך נחמדה שנקראת אובייקט. Dialogue: 0,0:01:03.12,0:01:06.80,Default,,0000,0000,0000,,מה שזה אומר זה שבמקום חמישה משתנים, יש לנו משתנה יחיד Dialogue: 0,0:01:06.80,0:01:11.62,Default,,0000,0000,0000,,שמכיל את כל המידע הזה - די מגניב. Dialogue: 0,0:01:11.62,0:01:15.17,Default,,0000,0000,0000,,בואו ננסה את זה עם המידע של ווינסטון. ראשית, ניצור את המשתנה Dialogue: 0,0:01:15.17,0:01:18.84,Default,,0000,0000,0000,,ונקרא לו ווינסטון. ואז Dialogue: 0,0:01:18.84,0:01:23.40,Default,,0000,0000,0000,,שמים סימן פתיחת סוגריים מסולסלים ({) - שימו לב שזה סוגריים מסולסלים, לא מרובעים - Dialogue: 0,0:01:23.40,0:01:27.11,Default,,0000,0000,0000,,ואז סימן נקודה-פסיק (;). יצרנו אובייקט Dialogue: 0,0:01:27.11,0:01:31.05,Default,,0000,0000,0000,,אבל עדיין אין בו שום מידע. Dialogue: 0,0:01:31.91,0:01:35.67,Default,,0000,0000,0000,,כדי להוסיף קצת מידע, אנחנו צריכים להוסיף מאפיינים. Dialogue: 0,0:01:35.67,0:01:41.28,Default,,0000,0000,0000,,לכל מאפיין יש מפתח וערך. למשל, עבור גיל נרשום - age: 19 Dialogue: 0,0:01:41.28,0:01:43.79,Default,,0000,0000,0000,,אוקיי. עכשיו בשביל צבע העיניים, נוסיף Dialogue: 0,0:01:43.79,0:01:48.04,Default,,0000,0000,0000,,פסיק, ואז: eyes: "black". אוקיי, מגניב Dialogue: 0,0:01:48.04,0:01:52.74,Default,,0000,0000,0000,,עכשיו יש לווינסטון שני מאפיינים בתוך האובייקט. Dialogue: 0,0:01:52.74,0:01:55.61,Default,,0000,0000,0000,,עבור תחביבים, נכתוב - likes: Dialogue: 0,0:01:55.61,0:02:00.08,Default,,0000,0000,0000,,ונעתיק את זה מכאן למעלה.. Dialogue: 0,0:02:00.08,0:02:04.00,Default,,0000,0000,0000,,יפה. בואו נסתכל על זה. לווינסטון יש שלושה מאפיינים. Dialogue: 0,0:02:04.00,0:02:07.53,Default,,0000,0000,0000,,לכל מאפיין יש מפתח - מה שנמצא בצד שמאל Dialogue: 0,0:02:07.53,0:02:12.80,Default,,0000,0000,0000,,וערך - מה שנמצא בצד ימין Dialogue: 0,0:02:12.80,0:02:15.63,Default,,0000,0000,0000,,במקרה של המפתח, הוא צריך לענות על אותם כללים כמו שמות משתנים ב-Javascript. Dialogue: 0,0:02:15.63,0:02:20.10,Default,,0000,0000,0000,,ללא רווחים, חייב להתחיל באות, וכו. Dialogue: 0,0:02:20.59,0:02:22.96,Default,,0000,0000,0000,,הערך יכול להיות מכל טיפוס Dialogue: 0,0:02:22.96,0:02:27.12,Default,,0000,0000,0000,,שהכרנו עד כה. זה יכול להיות מספר, מחרוזת, או מערך. Dialogue: 0,0:02:27.12,0:02:33.37,Default,,0000,0000,0000,,זה יכול גם להיות משתנה בוליאני, למשל - isCool: true, כמובן. Dialogue: 0,0:02:34.13,0:02:38.40,Default,,0000,0000,0000,,למעשה, הערך יכול להיות אפילו להיות אובייקט אחר. Dialogue: 0,0:02:38.40,0:02:42.71,Default,,0000,0000,0000,,למשל, BirthCity (עיר לידה) ו-BirthState (מדינת לידה). אלו הם בעיקרון חלקי מידע על אותו הדבר - Dialogue: 0,0:02:42.71,0:02:46.62,Default,,0000,0000,0000,,על מקום ספציפי. לכן, אני חושבת שזה Dialogue: 0,0:02:46.62,0:02:51.04,Default,,0000,0000,0000,,יהיה הגיוני יותר אם נשמור אותם יחד כאובייקט. אני אוסיף עוד מפתח, מקום לידה Dialogue: 0,0:02:51.04,0:02:54.84,Default,,0000,0000,0000,,ואז עבור הערך אני אשים שוב סוגריים מסולסים. Dialogue: 0,0:02:54.84,0:02:58.38,Default,,0000,0000,0000,,בפנים יהיה את המפתח לעיר - Dialogue: 0,0:02:58.38,0:03:02.29,Default,,0000,0000,0000,,"Mountain View", ואז המדינה - Dialogue: 0,0:03:02.29,0:03:06.77,Default,,0000,0000,0000,,"California". נהדר! עכשיו אתם יכולים לראות, שאתם יכולים Dialogue: 0,0:03:06.77,0:03:10.48,Default,,0000,0000,0000,,לשמור מידע מאוד עשיר בתוך אובייקט. Dialogue: 0,0:03:11.03,0:03:15.46,Default,,0000,0000,0000,,בסדר. עכשיו שיש לנו אובייקט נחמד שמתאר את כל המידע הזה על ווינסטון Dialogue: 0,0:03:15.46,0:03:18.78,Default,,0000,0000,0000,,בואו ננסה למחוק את המשתנים הבודדים הישנים Dialogue: 0,0:03:18.78,0:03:23.07,Default,,0000,0000,0000,,שלא היו קשורים אחד לשני. Dialogue: 0,0:03:23.07,0:03:27.04,Default,,0000,0000,0000,,אופס! יש לנו שגיאה. זה מכיוון Dialogue: 0,0:03:27.04,0:03:30.74,Default,,0000,0000,0000,,שפקודות ה-text מתייחסות למשתנים הישנים. אנחנו צריכים לעדכן Dialogue: 0,0:03:30.74,0:03:34.50,Default,,0000,0000,0000,,אותן כדי להשתשמש במידע מהאובייקט, במקום. Dialogue: 0,0:03:34.50,0:03:38.22,Default,,0000,0000,0000,,בואו נתחיל בלהפוך את שלושת הפקודות האחרונות להערה, כדי שנוכל Dialogue: 0,0:03:38.22,0:03:41.87,Default,,0000,0000,0000,,לעשות את זה אחד-אחד. אוקיי. אז כתוב כאן - winstonAge Dialogue: 0,0:03:41.87,0:03:46.40,Default,,0000,0000,0000,,כרגע. מה שאנחנו צריכים לעשות זה להחליף את זה, אז נכתוב Dialogue: 0,0:03:46.40,0:03:50.29,Default,,0000,0000,0000,,'winston', כי זה שם המשתנה. שימו לב שאם Dialogue: 0,0:03:50.29,0:03:53.83,Default,,0000,0000,0000,,נשאיר את זה ככה, זה מדפיס: 'object object'. זה ממש מכוער. Dialogue: 0,0:03:53.83,0:03:57.37,Default,,0000,0000,0000,,זה Javascript אומר לנו שאנחנו מנסים להפוך Dialogue: 0,0:03:57.37,0:04:02.11,Default,,0000,0000,0000,,אובייקט שלם לתוך ערך מחרוזת. במקום זה, אנחנו Dialogue: 0,0:04:02.11,0:04:06.13,Default,,0000,0000,0000,,רוצים לגשת רק לגיל בתוך האובייקט. מה שאנחנו עושים Dialogue: 0,0:04:06.13,0:04:11.06,Default,,0000,0000,0000,,זה מוסיפים נקודה (.), ואז רושמים את המפתח של המאפיין, שהוא: age. Dialogue: 0,0:04:11.06,0:04:14.90,Default,,0000,0000,0000,,טה-דה! יש לנו את הגיל. אנו קוראים לזה "dot notation" (סימון נקודה) Dialogue: 0,0:04:14.90,0:04:18.28,Default,,0000,0000,0000,,שזה אומר שאנחנו רושמים את שם המשתנה של האובייקט, ואז נקודה Dialogue: 0,0:04:18.28,0:04:21.79,Default,,0000,0000,0000,,ואז את מפתח המאפיין. אוקיי Dialogue: 0,0:04:21.79,0:04:26.24,Default,,0000,0000,0000,,אז עכשיו אנחנו הולכים לעשות עוד. נוריד את סימון ההערה כאן, ואז במקום winstonEyes Dialogue: 0,0:04:26.24,0:04:29.88,Default,,0000,0000,0000,,נרשום winston נקודה eyes, ואז Dialogue: 0,0:04:29.88,0:04:34.07,Default,,0000,0000,0000,,בשביל השורה הזאת - winston נקודה likes Dialogue: 0,0:04:34.07,0:04:37.74,Default,,0000,0000,0000,,ואז winston נקודה likes במקום ה-1, ואז Dialogue: 0,0:04:37.74,0:04:42.50,Default,,0000,0000,0000,,בשביל השורה האחרונה הזו, זה קצת יותר מורכב כי Dialogue: 0,0:04:42.50,0:04:45.45,Default,,0000,0000,0000,,זה אובייקט בתוך אובייקט. אז נרשום Dialogue: 0,0:04:45.45,0:04:48.78,Default,,0000,0000,0000,,winston ואז נקודה, birthplace Dialogue: 0,0:04:48.78,0:04:53.29,Default,,0000,0000,0000,,אבל אם נשאיר את זה כך, זה עדיין אובייקט שלם, אז נרשום עוד נקודה Dialogue: 0,0:04:53.29,0:04:57.46,Default,,0000,0000,0000,,ואז city. ובדומה נרשום אחרי זה - Dialogue: 0,0:04:57.46,0:05:01.57,Default,,0000,0000,0000,,winston.birthplace.state Dialogue: 0,0:05:01.57,0:05:05.79,Default,,0000,0000,0000,,טה-דה! אז זה ממש מגניב כי אתם יכולים פשוט לשלוף מידע ישר מתוך אובייקטים Dialogue: 0,0:05:05.79,0:05:09.42,Default,,0000,0000,0000,,שהם בתוך אובייקט אחר. Dialogue: 0,0:05:10.86,0:05:13.92,Default,,0000,0000,0000,,מעולה. כמו שאתם רואים Dialogue: 0,0:05:13.92,0:05:17.60,Default,,0000,0000,0000,,אובייקטים הם דרך מצוינת לשמור אוסף חלקי מידע קשורים Dialogue: 0,0:05:17.60,0:05:21.41,Default,,0000,0000,0000,,על אובייקט מסויים, ואז לגשת אל המידע הזה אחר כך. Dialogue: 0,0:05:21.41,0:05:25.41,Default,,0000,0000,0000,,כשתמשיכו עם הלמידה, תגלו עוד על כמה אובייקטים הם אדירים!