По умолчанию, JavaScript будет использовать временную зону браузера и отображать дату в виде полной текстовой строки: .
JavaScript хранит даты в виде количества миллисекунд, прошедших с 1 января 1970, 00:00:00 UTC (универсальные координаты времени).
var dat = new Date() |
1 |
new Date() |
|
- создает новый объект даты с текущими датой и временем |
new Date(0) |
|
- нулевая дата - это 1 января 1970 00:00:00 UTC |
new Date(-1000000000) |
|
- нулевая дата минус 1 000 000 000 миллисекунд - это 20 декабря 1969 13:13:20 UTC |
2 |
new Date(2018, 7, 7, 16, 30, 30, 0) |
|
- 7 числовых параметров определяют год, месяц, день, часы, минуты, секунды, миллисекунды |
new Date(2018, 7, 7) |
|
- 3 числовых параметра определяют год, месяц, день |
new Date(2018) |
|
- нельзя опускать параметр месяца: если задается один параметр, то он будет интерпретироваться как миллисекунды |
new Date(8, 7, 7) |
|
- eсли год указан в виде одной или двух цифр, то он интерпретируется как 19xx |
new Date("August 7, 2018 16:30:30") |
|
- дата, указанная в виде строки |
3 |
dat.toUTCString() |
|
- преобразует дату в строку UTC (стандарт отображения даты) |
dat.toDateString() |
|
- преобразует дату в более читабельный формат |
1 |
new Date("2018-08-07") |
|
- запись по ISO (Международный стандарт) |
new Date("2018") |
|
- дата по стандарту ISO также может записываться без определения месяца и дня |
new Date("2018-08-07T16:30:30Z") |
|
- дата по стандарту ISO с добавлением часов, минут и секунд |
new Date("2018-08-07T16:30:00-06:00") |
|
- чтобы указать время относительно UTC, нужно убрать букву Z и добавить сдвиг в формате +ЧЧ:ММ или -ЧЧ:ММ |
2 |
new Date("08/07/2018") |
|
- короткая запись |
3 |
new Date("August 7 2018") |
|
- длинная запись; - месяц и день могут быть в любом порядке; - месяц может записываться либо полностью (January), либо сокращенно (Jan); - запятые игнорируются; - имена регистронезависимы |
var dat = new Date() |
1 |
var msec = Date.parse("August 7, 2018") |
|
- возвращает количество миллисекунд, прошедших с 1 января 1970 до заданной даты |
new Date(msec) |
|
- полученные миллисекунды можно преобразовать в объект даты |
2 |
dat.getTime() |
|
- возвращает количество миллисекунд, прошедших с 1 января 1970 до сейчас |
3 |
dat.getFullYear(); dat.getMonth(); dat.getDate() |
|
- возвращает год в формате четырех цифр; номер месяца (0-11); число месяца (1-31) |
dat.getDay() |
|
- возвращает номер дня недели (0-6) |
dat.getHours(); dat.getMinutes(); dat.getSeconds(); dat.getMilliseconds(); |
|
- возвращает час (0-23); - минуты (0-59); - секунды (0-59); - миллисекунды (0-999) |
4 |
months[dat.getMonth()] |
|
- чтобы возвращалось название месяца, можно создать массив "month" с именами месяцев |
5 |
dat.getUTCDay(); dat.getUTCFullYear(); dat.getUTCMonth(); dat.getUTCDate(); dat.getUTCHours(); dat.getUTCMinutes(); dat.getUTCSeconds(); dat.getUTCMilliseconds(); |
|
- есть также аналогичные методы, но возвращающие данные по UTC (Universal Time Zone) |
6 |
dat.setFullYear(2018) |
|
- устанавливает в объекте даты год; при помощи этого метода также можно установить месяц и день |
dat.setMonth(6) |
|
- устанавливает в объекте даты месяц (0-11) |
dat.setDate(6) |
|
- устанавливает в объекте даты день (1-31 |
dat.setHours(16) |
|
- устанавливает в объекте даты час (0-23) |
dat.setMinutes(30) |
|
- устанавливает в объекте даты минуты (0-59) |
dat.setSeconds(30) |
|
- устанавливает в объекте даты секунды (0-59) |
dat.setMiliseconds(500) |
|
- устанавливает в объекте даты милисекунды |
7 |
dat.setDate(dat.getDate() + 50) |
|
- метод setDate() может использоваться для добавления дней к дате |
8 |
today и someday - объекты даты;
if (someday > today) |
|
- даты можно сравнивать |
ECMAScript 5 (2009) |
1 |
Date.now() |
|
- возвращает количество миллисекунд, прошедших с нулевой даты (то же, что и dat.getTime()) |