Вступ до дат UTC
У JavaScript є ряд функцій, які стосуються часу UTC, але що таке UTC? За даними Обсерваторії пупок США, час UTC - це "координований універсальний час", скоординований масштаб цивільного часу, "який зберігають лабораторії часу по всьому світу ... визначається за допомогою високоточних атомних годин". Це приблизно те саме, що середній час за Грінвічем (GMT), але є більш точним. Ряд країн, такі як Марокко, Ісландія та Малі; використовувати UTC безпосередньо як свій цивільний час. Взимку UTC - цивільний час для Великобританії. Цивільний час США визначається встановленою кількістю компенсованих годин від UTC. Наприклад, Арізона (яка не тримає літнього часу) завжди є UTC + 7. Пекін, часовий пояс Китаю - UTC-8 (ми будемо використовувати це в наших прикладах нижче.)

У більшості методів дати JavaScript є еквівалентний метод, який стосується часу UTC, а не місцевого часу. Наприклад, getHours () повертає годину за місцевим часом, тоді як getUTCHours () повертає годину за часом UTC. Ви можете отримати об'єкт Date у читаній людиною формі відносно місцевого часу за допомогою toLocaleString () та відносно UTC за допомогою toUTCString (). Об’єкт Date JavaScript навіть має метод з назвою UTC. Метод UTC () - це статичний метод, який використовується для перетворення дати у визначеному форматі в мілісекунди з 1 січня 1970 року (щодо UTC). Потім можна використовувати конструктор Date () для створення об'єкта Date з цим значенням.

Наприклад, Китай оголосив, що церемонії відкриття Олімпіади 2008 року відбудуться 8 серпня 2008 року о 20:08. Ми можемо використовувати метод UTC () JavaScript, щоб дізнатися, коли це місцевий час.

вар зміщення = -8; // зміщення від UTC
var luckyday = нова дата (Date.UTC (2008,7,8, (20 + offset), 8);
document.write ("Олімпіада 2008 року починається з" + luckyday.toUTCString ());
document.write ("Місцевий час це" + luckyday.toLocaleString ())

Примітка: У наведеному вище прикладі я перетворив час із Пекіна на UTC, додавши зміщення від UTC ("-8") до пекінського часу - ось чому аргумент 4 Date.UTC читає "(20 + зміщення)" вище.

Якщо у вашому браузері доступний JavaScript, ви можете побачити приклад цього коду тут.


ДОВІДКА

Date.UTC ( рік, місяць [, день, [година, [хвилини, [секунди, [мілісекунд]]]]]])

перетворює задану дату в мілісекунди з 1 січня 1970 року.

Примітка: всі аргументи - це цифри. Як завжди в JavaScript, місяць 0 - січень. Якщо будь-який аргумент, окрім року, є більшим або меншим числом, ніж можливе значення, яке воно представляє, він застосовується для впливу на наступний більший аргумент - наприклад, місяць 13 трактується як лютий наступного року та місяць -2 трактується як листопад попереднього року.

ДЖЕРЕЛО

Американська морська обсерваторія. "Що таке універсальний час?" 30 жовтня 2003. Військово-морська обсерваторія США, відділ астрономічних застосувань. 6 липня 2007 року.

Відео Інструкція: UFC 242: Хабиб vs Порье - Разбор полетов с Дэном Харди (Квітня 2024).