Познайомтеся з новим вбудованим об’єктом: Date. Він зберігає дату, час і надає методи для управління датою/часом.
Наприклад, ми можемо використовувати його для зберігання часу створення/модифікації, щоб виміряти час, або просто для друку поточної дати.
Створення
Щоб створити новий об’єкт Date викличемо new Date() з одним з наступних аргументів:
new Date()-
Без аргументів – створює об’єкт
Dateдля поточної дати та часу:let now = new Date(); alert( now ); // показує поточну дату/час new Date(milliseconds)-
Створює об’єкт
Dateз часом, що дорівнює кількості мілісекунд (1/1000 секунди), що минули після 1 січня 1970 UTC+0.// 0 означає 01.01.1970 UTC+0 let Jan01_1970 = new Date(0); alert( Jan01_1970 ); // тепер додамо 24 години, отримаємо 02.01.1970 UTC+0 let Jan02_1970 = new Date(24 * 3600 * 1000); alert( Jan02_1970 );Ціле число, яке являє собою кількість мілісекунд, що пройшли з початку 1970 року, називається міткою часу (timestamp).
Це легке числове представлення дати. Ми завжди можемо створити дату з timestamp за допомогою
new Date(timestamp)і перетворити об’єктDate, що існує, до timestamp за допомогою методуdate.getTime()(див. нижче).Дати до 01.01.1970 р. мають негативний timestamp, наприклад:
// 31 грудня 1969 року let Dec31_1969 = new Date(-24 * 3600 * 1000); alert( Dec31_1969 ); new Date(datestring)-
Якщо є єдиний аргумент, і це рядок, то він автоматично аналізується. Алгоритм той же, що використовує
Date.parse, ми розглянемо це пізніше.let date = new Date("2017-01-26"); alert(date); // Час не встановлений, тому припускається, що це буде північ за GMT і // регулюється відповідно до того часового поясу, де запускається код // Тому результат може бути // Thu Jan 26 2017 11:00:00 GMT+1100 (Australian Eastern Daylight Time) // або // Wed Jan 25 2017 16:00:00 GMT-0800 (Pacific Standard Time) new Date(year, month, date, hours, minutes, seconds, ms)-
Створює дату з заданими компонентами у місцевому часовому поясі. Тільки перші два аргументи обов’язкові.
yearмає містити 4 цифри. Для сумісності також допускаються 2 цифри, які вважаються19xx, напр.98тут те саме, що й1998, але настійно рекомендується завжди використовувати 4 цифри.- Рахунок місяців починається з
0(січня), до11(грудня). - Параметр
dateнасправді день місяця, якщо він відсутній, то береться1. - Якщо
hours/minutes/seconds/msвідсутні, вони вважаються рівними0.
Наприклад:
new Date(2011, 0, 1, 0, 0, 0, 0); // 1 січня 2011 року, 00:00:00 new Date(2011, 0, 1); // те ж саме, години тощо -- 0 за замовчуваннямМаксимальна точність становить 1 мс (1/1000 сек):
let date = new Date(2011, 0, 1, 2, 3, 4, 567); alert( date ); // 1.01.2011, 02:03:04.567