--- title: Date.UTC() slug: Web/JavaScript/Reference/Global_Objects/Date/UTC tags: - UTC - Дата - Довідка - Час Unix translation_of: Web/JavaScript/Reference/Global_Objects/Date/UTC ---
{{JSRef}}

Метод Date.UTC() приймає той самий перелік параметрів, що й найдовша форма конструктора {{jsxref("Date")}}, та повертає кількість мілісекунд між 00:00:00 першого січня 1970 року та миттю у часі (за UTC), що відповідає переданим параметрам.

{{EmbedInteractiveExample("pages/js/date-utc.html")}}

Синтаксис

Date.UTC(year, month[, day[, hour[, minute[, second[, millisecond]]]]])

Параметри

year
Ціле число, що позначає рік. Значення в проміжку 0-99 позначає рік 20-го сторіччя (1900-1999), а всі решта значень — як є (абсолютне значення).
month
Ціле число між 0 та 11, позначає місяць.
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, позначає мілісекунди.

Повертає

Ціле число, що являє собою кількість мілісекунд між 00:00:00 першого січня 1970 року та моментом часу (за UTC), що відповідає переданим параметрам.

Опис

Метод приймає параметри, що позначають окремі складники дати й часу, та повертає кількість мілісекунд між північчю (00:00:00) першого січня 1970-го року за UTC та вказаною миттю у часі. Всі дати раніше за точку відліку (перше січня 1970-го року) позначаються від'ємними числами.

Зауважте, що лік місяців (другий параметр метода) починається з нуля, а не з одиниці.

Вказуйте повний рік від Різдва Христового; наприклад 1998. Якщо вказано значання між 0 та 99, його буде перетворено на рік 20-го сторіччя (себто 1900 + year); наприклад, 91 позначає 1991 рік.

Між методом UTC() та конструктором {{jsxref("Date")}} є дві відмінності:

Заувага: Якщо значення одного чи декількох вказаних складників виходить за прийнятні межі (скажімо, вказано 13-й місяць чи 70 хвилин), буде скориговано суміжні складники. Себто виклик Date.UTC(2013, 13, 1) є тотожним до Date.UTC(2014, 1, 1) і так само відповідає даті 2014-02-01T00:00:00Z. Те саме стосується інших значень: виразам Date.UTC(2013, 2, 1, 0, 70) та Date.UTC(2013, 2, 1, 1, 10) однаково відповідає дата 2013-03-01T01:10:00Z.

Позаяк UTC() є статичним методом класу {{jsxref("Date")}}, він зазвичай викликається через ім'я класу — Date.UTC(), а не через наявний об'єкт.

Приклади

Використання Date.UTC()

Наведений приклад створює об'єкт типу {{jsxref("Date")}} зі складників дати й часу, що тлумачаться як UTC, а не місцевий час:

var independenceDateAsMs = Date.UTC(91, 7, 24, 9, 0, 0);
console.log(independenceDateAsMs);  // 683024400000

var independenceDate = new Date(independenceDateAsMs);
console.log(independenceDate);  // Sat Aug 24 1991 12:00:00 GMT+0300 (EEST)

Такий приклад засвідчує, що дати раніше точки відліку (північ першого січня 1970-го року) позначаються від'ємними числами:

var ms = Date.UTC(1969, 11, 31, 23, 59, 59, 999);
console.log(ms);  // -1

Специфікації

Специфікація Статус Коментар
{{SpecName('ESDraft', '#sec-date.utc', 'Date.UTC')}} {{Spec2('ESDraft')}}
{{SpecName('ES6', '#sec-date.utc', 'Date.UTC')}} {{Spec2('ES6')}}
{{SpecName('ES5.1', '#sec-15.9.4.3', 'Date.UTC')}} {{Spec2('ES5.1')}}
{{SpecName('ES1')}} {{Spec2('ES1')}} Початкова виознака. Запроваджено у JavaScript 1.0.

Підтримка веб-переглядачами

{{Compat("javascript.builtins.Date.UTC")}}

Сумісність

Відсутність обов'язкових аргументів Date.UTC

За відсутності одного чи обох обов'язкових аргументів метод Date.UTC має повертати {{Glossary("NaN")}}. Така поведінка визначена специфікацією ECMAScript 2017. Web-рушії, які не підтримували цю поведінку, було оновлено (див. {{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

Див. також

Дізнатись більше