Date.UTC()
Базовый уровень Широко доступно
Эта функция хорошо зарекомендовала себя и работает на множестве устройств и версий браузеров. Она доступна в браузерах с июля 2015 года.
Статический метод Date.UTC() принимает параметры, представляющие компоненты даты и времени, аналогичные конструктору Date, но обрабатывает их как UTC. Он возвращает количество миллисекунд с 1 января 1970 г., 00:00:00 UTC.
Попробуйте
const utcDate1 = new Date(Date.UTC(96, 1, 2, 3, 4, 5)); const utcDate2 = new Date(Date.UTC(0, 0, 0, 0, 0, 0)); console.log(utcDate1.toUTCString()); // Expected output: "Fri, 02 Feb 1996 03:04:05 GMT" console.log(utcDate2.toUTCString()); // Expected output: "Sun, 31 Dec 1899 00:00:00 GMT"
Синтаксис
Date.UTC(year) Date.UTC(year, monthIndex) Date.UTC(year, monthIndex, day) Date.UTC(year, monthIndex, day, hours) Date.UTC(year, monthIndex, day, hours, minutes) Date.UTC(year, monthIndex, day, hours, minutes, seconds) Date.UTC(year, monthIndex, day, hours, minutes, seconds, milliseconds)
Параметры
-
year - Целочисленное значение, представляющее год. Значения от
0до99соответствуют годам1900-1999. Все остальные значения — это фактический год. См. пример. -
monthIndexНеобязательный - Целочисленное значение, представляющее месяц, начиная с
0для января до11для декабря. По умолчанию0. -
dayНеобязательный - Целочисленное значение, представляющее день месяца. По умолчанию
1. -
hoursНеобязательный - Целочисленное значение от
0до23, представляющее час дня. По умолчанию0. -
minutesНеобязательный - Целочисленное значение, представляющее минуты времени. По умолчанию
0. -
secondsНеобязательный - Целочисленное значение, представляющее секунды времени. По умолчанию
0. -
millisecondsНеобязательный - Целочисленное значение, представляющее миллисекунды времени. По умолчанию
0.
Возвращаемое значение
Число, представляющее временную метку заданной даты. Возвращает NaN, если дата недействительна.
Описание
Годы от 0 до 99 преобразуются в год 20-го века (1900 + year). Например, 95 преобразуется в 1995 год.
Метод UTC() отличается от конструктора Date() тремя способами:
-
Date.UTC()использует всемирное время вместо местного. -
Date.UTC()возвращает значение времени в виде числа, а не создает объектDate. - При передаче одного числа
Date.UTC()интерпретирует его как год, а не как временную метку.
Если параметр выходит за пределы допустимого диапазона, метод UTC() обновляет другие параметры для соответствия значению. Например, если для monthIndex используется 15, год будет увеличен на 1 (year + 1), а для месяца будет использоваться 3.
Поскольку UTC() является статическим методом Date, вы всегда используете его как Date.UTC(), а не как метод созданного вами объекта Date.
Примеры
Использование Date.UTC()
Следующее утверждение создает объект Date, в котором аргументы обрабатываются как UTC, а не как локальные:
const utcDate = new Date(Date.UTC(2018, 11, 1, 0, 0, 0));
Поведение Date.UTC() с одним аргументом
Date.UTC() при передаче одного аргумента имел непоследовательное поведение, поскольку реализации сохраняли только поведение, соответствующее конструктору Date(), который не интерпретирует один аргумент как номер года. Теперь реализации обязаны рассматривать пропущенные monthIndex как 0, а не преобразовывать их в NaN.
Date.UTC(2017); // 1483228800000
Спецификации
Совместимость с браузерами
| Настольные компьютеры | Мобильные устройства | Сервер | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | WebView на iOS | Bun | Deno | Node.js | |
UTC |
1 |
12 |
1 |
3 |
1 |
18 |
4 |
10.1 |
1 |
1.0 |
4.4 |
1 |
1.0.0 |
1.0 |
0.10.0 |
optional_monthIndex |
≤15 |
≤15 |
≤4 |
15 |
≤10.1 |
18 |
4 |
14 |
≤10.3 |
1.0 |
4.4 |
≤10.3 |
1.0.0 |
1.0 |
8.0.0 |
См. также
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/UTC