--- title: Date.UTC() slug: Web/JavaScript/Reference/Global_Objects/Date/UTC tags: - Date - JavaScript - Method - Reference translation_of: Web/JavaScript/Reference/Global_Objects/Date/UTC ---
Метод Date.UTC()
принимает те же самые параметры, что и самая длинная форма конструктора {{jsxref("Global_Objects/Date", "Date")}} и возвращает количество миллисекунд, прошедших с 1 января 1970 года 00:00:00 по UTC.
Начиная с ECMAScript 2017:
Date.UTC(year[, month[, day[, hour[, minute[, second[, millisecond]]]]]])
ECMAScript 2016 и ранее: (использование month
обязательно)
Date.UTC(year, month[, day[, hour[, minute[, second[, millisecond]]]]])
year
month
0
и 11
, представляющее месяц. (начиная с ES2017 необязательный параметр)day
{{optional_inline}}1
и 31
, представляющее дни месяца.hour
{{optional_inline}}0
и 23
, представляющее часы.minute
{{optional_inline}}0
и 59
, представляющее минуты.second
{{optional_inline}}0
и 59
, представляющее секунды.millisecond
{{optional_inline}}0
и 999
, представляющее миллисекунды.Число, представляющее собой количество миллисекунд, прошедших с 1-ого Января 1970 года 00:00:00 UTC.
Метод UTC()
принимает параметры даты, разделённые запятыми и возвращает количество миллисекунд, прошедших с 1 января 1970 года 00:00:00 по UTC и указанным вами временем.
Для параметра year
вы должны указать полный год; например, 1998. Если указан год между 0
и 99
, метод преобразует год в год в 20-м веке (1900 + year)
; например, если вы указали 95
, будет использоваться 1995
год.
Метод UTC()
отличается от конструктора {{jsxref("Global_Objects/Date", "Date")}} двумя вещами.
Date.UTC()
использует всемирное время вместо местного времени.Date.UTC()
возвращает значение времени как число вместо создания объекта {{jsxref("Global_Objects/Date", "Date")}}.Если определённый вами параметр выходит за пределы ожидаемого диапазона, метод UTC()
обновит другие параметры чтобы привести это число в ожидаемый диапазон. Например, если вы используете в качестве месяца число 15, год будет увеличен на 1 (year + 1)
, и в качестве месяца будет использоваться значение 3.
Поскольку метод UTC()
является статическим методом объекта {{jsxref("Global_Objects/Date", "Date")}}, вы всегда должны использовать его как Date.UTC()
.
Date.UTC()
Следующее выражение создаёт объект {{jsxref("Global_Objects/Date", "Date")}}, используя всемирное время вместо местного:
var utcDate = new Date(Date.UTC(2018, 11, 1, 0, 0, 0));
Спецификация |
---|
{{SpecName('ESDraft', '#sec-date.utc', 'Date.UTC')}} |
{{Compat("javascript.builtins.Date.UTC")}}
Когда вы предоставляете функции Date.UTC()
меньше, чем два аргумента, то по стандартам ECMAScript 2017, она должна вернуть {{jsxref("NaN")}}. Браузерные движки, не поддерживающие подобное поведение, были обновлены (смотрите bug 1050755, ecma-262 #642).
Date.UTC(); Date.UTC(1); // Safari: NaN // Chrome/Opera/V8: NaN // Firefox <54: non-NaN // Firefox 54+: NaN // IE: non-NaN // Edge: NaN