
new Date() מחזיר אובייקט עם התאריך והשעה של הרגע שבו הפקודה רצה.getFullYear מחזיר את השנה בארבע ספרות. getMonth מחזיר חודש בין 0 ל-11, ולכן מוסיפים 1. getDate מחזיר את היום בחודש, מ-1 עד 31. getDay מחזיר את יום השבוע, בין 0 ל-6, כשיום שבת הוא 6.getHours מחזיר שעה בין 0 ל-23, getMinutes ו-getSeconds בין 0 ל-59, ו-getMilliseconds בין 0 ל-999.getYear מיושנת, כי היא מחזירה שנה בשתי ספרות.getTime מחזיר את מספר המילישניות שעברו מ-1 בינואר 1970 בחצות. זו נקודת הייחוס שמחשבים משתמשים בה לזמן.getUTCHours מחזירות את הערכים לפי UTC. בזמן ההקלטה שעון ישראל היה שעתיים קדימה, ו-getTimezoneOffset החזיר מינוס 120 דקות.set כמו setFullYear, setDate, setHours ו-setTime משנות את האובייקט בלבד, ולא את השעה במחשב של הלקוח.toDateString ו-toTimeString מחזירים תצוגה סטנדרטית באנגלית. toLocaleDateString ו-toLocaleTimeString מחזירים לפי המדינה הנוכחית. toString ו-toLocaleString מחזירים את התאריך והשעה ביחד.new Date עם מספר מילישניות, עם מחרוזת תאריך, או עם שנה, חודש (שמתחיל מ-0), יום, שעה, דקה ושנייה.var d = new Date();, d.getFullYear(), d.getMonth() + 1, d.getDate(), d.getTimezoneOffset(), d.setFullYear(2000), d.toLocaleString().getDate מטעה קצת, כי הוא מחזיר את היום בחודש, ואילו getDay מחזיר את יום השבוע. setFullYear משנה רק את האובייקט, לא את השעה במחשב.הטקסט המלא של הדקות הראשונות בהרצאה «עבודה עם תאריכים ב-Javascript» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
האובייקט הבא שקיים ב-JavaScript זה אובייקט שנקרא Date. האובייקט הזה מאפשר לנו לקחת את השעה ואת התאריך הנוכחיים של המחשב של הלקוח, להסתכל עליהם, ולשנות את האובייקט מבלי לשנות את השעה ואת התאריך הנוכחיים של הלקוח.
למה אנחנו צריכים לעשות את זה? אם אנחנו רוצים לדוגמה להציג, כמו שאנחנו רואים כאן באתר טיים, מה השעה והתאריך הנוכחיים כרגע אצל המחשב של הלקוח.
אנחנו יכולים גם לעשות חישובים אחרים, אנחנו יכולים להציג זמן הולך אחורה עד לשעה מסוימת ועוד כל מיני דברים. אז בואו נראה איך אנחנו עובדים איתו. אז ראשית אנחנו צריכים להגדיר משתנה בדוגמת d ולהכניס אליו new date.
ברגע שעשיתי את הדבר הזה אוטומטית d מקבל את התאריך ואת השעה הנוכחיים בזמן של הרצת הפקודה הזאת. אני עכשיו יכול להסתכל ולהציג את הפרמטרים האלה.
בואו נראה. אז מה קיים לנו ב-d? אז ראשית אני יכול להסתכל על get full year. get full year מקבל לי את השנה הנוכחית כרגע שיש באובייקט הזה בזמן הרצאת הפקודה.
בואו נבדוק, ואנחנו רואים שקיבלנו את השנה 2012. אותו הדבר, יש לי אפשרות להסתכל על החודש בעזרת הפונקציה get month.
נבדוק, ואנחנו רואים כרגע שקיבלנו 5. עכשיו החודש הנוכחי זה יוני. הסיבה שקיבלתי 5 זה מפני שגט מאנס מחזירה את החודש בין 0 ל-11. זאת הסיבה שחזרנו 1 פחות.
פונקציה נוספת נקראת גט דייט. עכשיו שימו לב, פונקציה שהשם שלה טיפה מטעה או טיפה הרבה מטעה.
גט דייט מחזירה לנו את היום בין תחילת היום בחודש עד לסוף היום בחודש, כאשר הערך יכול להיות בין 0 ל-31. פונקציה טיפה מטעה, בואו נסתכל כרגע מה הולך לחזור.
אז אנחנו רואים 23, בואו נסתכל מה התאריך הנוכחי, ואנחנו רואים שהתאריך הנוכחי זה 23 לשישי 2012. אז פונקציית getDate החזירה לנו את היום בעצם, 23. פונקציית getMonth החזירה לנו את החודש פחות 1, הפונקציה get full year החזירה לנו את השנה בארבע ספרות.
אנחנו יכולים באותה צורה לראות גם את השעה. אז יש לנו את הפונקציה get hours, יש לנו את הפונקציה get minutes ויש לנו את הפונקציה get seconds. בואו נסתכל מה הן מחזירות.
אוקיי, get hour החזירה לנו את השעה, אנחנו רואים שהשעה כרגע היא 2, זאת אומרת 14. get minutes החזירה לנו את הדקות ו-get seconds ממש את השניות.
אז שלושת הפונקציות האלה החזירו את הערכים בדיוק כמו שהם. כלומר, שעות בין 0 ל-23, דקות בין 0 ל-59, שניות בין 0 ל-59.
אז אם אני רוצה להציג את התאריך ואת השעה כמו שהם, מה אני בעצם יכול לעשות? אוקיי, אז בואו נציג את זה בצורה מפורמטת לפי מה שאנחנו רוצים.
אז ראשית, נציג את היום. שוב, זאת פונקציה מוזרה הזאת עם השם הלא מדויק, getDate.
לאחר מכן נפרמט איזה תו שאנחנו רוצים, לאחר מכן get month מחזירה לנו את החודש אבל שמנו לב שזה אחד פחות לכן אנחנו נעלה אותו באחד, נשרשר אותו שוב עם סלאש ונשרשר את זה עם get full year.
שימו לב שקיימת עוד פונקציה שנקראת get year אבל הפונקציה הזאת היא מיושנת מהסיבה שהיא מחזירה לנו את היום בשתי ספרות לכן חשוב להשתמש ב-get full year. אז בעצם מה שאנחנו מציגים כרגע זה אך ורק התאריך בפורמט מסוים שאנחנו רוצים.
בואו נסתכל על זה, ואנחנו רואים שהתאריך מוצג 23.6.2012. עכשיו אם אנחנו רוצים להמשיך ולהציג את השעה, בואו נמשיך לפרמט את getHours, הפעם נפרמט אותו עם נקודותיים, לאחר מכן getMinutes, ולאחר מכן getSeconds.
בואו נבדוק, ויש לנו כרגע את השעה. פונקציה נוספת שמאפשרת לנו לקחת מידע מהתאריך נקראת get day. פונקציית get day מאפשרת לנו לקבל את היום בשבוע.
היום, יום שבת. הפונקציה מחזירה מספר בין 0 ל-6. שבת זה כמובן 6. פונקציה נוספת נקראת get milliseconds.
הפונקציה מאפשרת לקבל את המילישניות בשעה הנוכחית. בואו נראה. קיבלנו מספר בין 0 ל-999, וזה בעצם המילי שניות בשעה הנוכחית.
כל פעם שנריץ נקבל מספר אחר. פונקציה נוספת נקראת get time. פונקציית get time מחזירה לנו את מספר המילי שניות שעברו מתאריך מאוד מאוד ידוע בעולם המחשבים, והתאריך הזה זה 1 בינואר 1970 חצות.
התאריך הזה מאפשר לקבוע המון דברים בעולם הפיתוח תוכנה. בעצם מהתאריך הזה מתחילים לספור את המילי שניות, המחשבים משתמשים בתאריך המיוחד הזה בשביל לקבוע את השעה הנוכחית.
דרך אגב, משהו מעניין בקשר לתאריך הזה אפשר לראות כאשר אנחנו מחפשים בגוגל באג unix 2038. מה שקורה זה שב-2038 התאריך הזה בעצם מהתאריך ועד 2038 הולכים להיות מספר מילי שניות שימלא ארבעה בתים, כלומר אינטג'ר אחד, ולכן מה שהולך לקרות, אנחנו יכולים לראות
את זה כאן, זה שהשנה 2038 הולכת להפוך בדיוק בתאריך הזה לשנה 1901 מבחינת המערכות מחשב שמשתמשות בשיטה הזאת. יוניקס משתמשת המון בשיטה הזאת, ולכן מערכות יוניקס הולכות בעצם לקבל את הבאג הזה בצורה נרחבת, אם ב-2038 הם עדיין ישתמשו בשיטה הזאת.
אז בעצם אנחנו יכולים לראות שהתאריך 2038 ב-19 לראשון בשעה 3 לפנות בוקר הולך למלא את כל הספרות של אינטג'ר והתאריך בעצם הולך להתחלף ל-1901 תם לידע כללי.
עכשיו בעולם השעה והתאריך ישנם שני מונחים ששווה מאוד להכיר. מונח אחד נקרא GMT. GMT זה קיצור של גריניץ' זה בעצם מונח שאומר השעה ברובע גריניץ' שבלונדון.
רובע גריניץ' נמצאת בקו רוחב 0 ולכן השעה הזאת הייתה שעה קבועה בכל השנה בעצם ולא נתונה לשינויים של שעון קיץ ושעון חורף ולכן במשך הרבה שנים זה היה השעה שלפיה נקבעו השעונים בכל העולם.
השעה הזאת לא הייתה הכי מדויקת ולכן החליפו