Wprowadzenie do dat UTC
JavaScript ma wiele funkcji, które zajmują się czasem UTC, ale jaki jest czas UTC? Według US Navel Observatory czas UTC to „skoordynowany czas uniwersalny”, skoordynowana skala czasu cywilnego „utrzymywana przez laboratoria czasowe na całym świecie ... określone przy użyciu bardzo precyzyjnych zegarów atomowych”. Jest to mniej więcej tyle samo, co czas GMT, ale jest bardziej precyzyjne. Wiele narodów, takich jak Maroko, Islandia i Mali; używać UTC bezpośrednio jako czasu cywilnego. Zimą UTC to czas cywilny dla Wielkiej Brytanii. Czas cywilny w USA jest określony przez określoną liczbę godzin przesuniętą od UTC. Na przykład Arizona (która nie zachowuje czasu letniego) ma zawsze UTC + 7. Pekin, chińska strefa czasowa to UTC-8 (wykorzystamy to w poniższych przykładach).

Większość metod JavaScript Data ma równoważną metodę, która zajmuje się czasem UTC, a nie czasem lokalnym. Na przykład getHours () zwraca godzinę w czasie lokalnym, podczas gdy getUTCHours () zwraca godzinę w czasie UTC. Możesz uzyskać obiekt Date w postaci czytelnej dla człowieka względem czasu lokalnego za pomocą toLocaleString () i względem UTC za pomocą toUTCString (). Obiekt JavaScript Date ma nawet metodę o nazwie UTC. Metoda UTC () to metoda statyczna używana do konwersji daty w określonym formacie na milisekundy od 1 stycznia 1970 r. (W stosunku do UTC). Następnie możesz użyć konstruktora Date (), aby utworzyć obiekt Date o tej wartości.

Na przykład Chiny ogłosiły, że ceremonie otwarcia Olimpiady w 2008 r. Odbędą się 8 sierpnia 2008 r. O 20:08. Możemy użyć metody UTC () JavaScript, aby dowiedzieć się, kiedy jest to czas lokalny.

var offset = -8; // przesunięcie względem UTC
var luckyday = nowa data (Date.UTC (2008,7,8, (20 + przesunięcie), 8);
document.write („Olimpiada 2008 zaczyna się od” + luckyday.toUTCString ());
document.write („To jest czas lokalny” + luckyday.toLocaleString ())

Uwaga: W powyższym przykładzie przekonwertowałem czas Pekinu na czas UTC, dodając przesunięcie czasu UTC („-8”) do czasu Pekinu - dlatego argument 4 Date.UTC brzmi „(przesunięcie 20 +)” powyżej.

Jeśli masz włączoną obsługę JavaScript w przeglądarce, możesz zobaczyć na żywo przykład tego kodu tutaj.


ODNIESIENIE

Data.UTC ( rok, miesiąc [, dzień, [godzina, [minuty, [sekundy, [milisekundy]]]]])

konwertuje podaną datę na milisekundy od 1 stycznia 1970 r.

Uwaga: wszystkie argumenty są cyframi. Jak zawsze w JavaScript, miesiącem 0 jest styczeń. Jeśli jakikolwiek argument inny niż rok jest liczbą większą lub mniejszą niż to możliwe dla wartości, którą reprezentuje, służy do wpływania na kolejny większy argument - na przykład miesiąc 13 jest interpretowany jako luty następnego roku, a miesiąc miesiąca -2 interpretuje się jako listopad poprzedniego roku.

ŹRÓDŁO

Obserwatorium Marynarki Wojennej USA. „Czym jest czas uniwersalny?” 30 października 2003 r. Obserwatorium Marynarki USA, Departament Zastosowań Astronomicznych. 6 lipca 2007 r.

Instrukcje Wideo: Texas Hunter Eliminates Hundreds of Feral Hogs with Military-Grade Sniper Scope (Może 2024).