Die Methode Date.prototype.getUTCDay() gibt den Wochentag eines Date-Objekts in der koordinierten Weltzeit (UTC) zurück. Wie bei getDay() ist die Nummerierung 0-basiert und beginnt mit Sonntag (0). Die UTC-Variante eignet sich überall dort, wo der Wochentag konsistent über Zeitzonen hinweg ermittelt werden soll – beispielsweise in einem Server-Cron, der montags eine Aufgabe ausführen soll, ohne dass die Server-Zeitzone das Verhalten beeinflusst.

Funktionsweise

getUTCDay() ignoriert die lokale Zeitzone des ausführenden Systems. Die Zuordnung der Werte ist identisch zu getDay():

WertWochentag (DE)Wochentag (EN)
0SonntagSunday
1MontagMonday
2DienstagTuesday
3MittwochWednesday
4DonnerstagThursday
5FreitagFriday
6SamstagSaturday

Bei Zeitpunkten nahe Mitternacht kann der UTC-Wochentag deshalb vom lokalen abweichen.

Syntax

JavaScript Syntax
date.getUTCDay()

Die Methode erwartet keine Parameter.

Rückgabewert

Eine Ganzzahl zwischen 0 (Sonntag) und 6 (Samstag), die den Wochentag in UTC repräsentiert. Bei einem ungültigen Datum wird NaN zurückgegeben.

Beispiele

UTC-Wochentag auslesen

JavaScript Beispiel
const date = new Date("2026-05-01T12:00:00Z");
console.log(date.getUTCDay());
Output
5

Der 1. Mai 2026 ist in UTC ein Freitag (5).

Wochenende in UTC bestimmen

JavaScript Beispiel
function istWochenendeUTC(date) {
    const day = date.getUTCDay();
    return day === 0 || day === 6;
}

console.log(istWochenendeUTC(new Date("2026-05-02T10:00:00Z"))); // Samstag
console.log(istWochenendeUTC(new Date("2026-05-04T10:00:00Z"))); // Montag
Output
true
false

Unterschied zwischen getDay() und getUTCDay()

In bestimmten Konstellationen liefern beide Methoden unterschiedliche Werte – etwa wenn ein Zeitpunkt in einer westlichen Zeitzone nahe Mitternacht liegt, sodass UTC bereits den nächsten Tag schreibt.

JavaScript Beispiel
// Freitag 23:00 Uhr in New York (UTC-4)
const date = new Date("2026-05-01T23:00:00-04:00");
console.log(`UTC: ${date.getUTCDay()}`);
Output
UTC: 6

In UTC ist es bereits Samstag (3:00 Uhr).

Wöchentlicher Cron-Job

Server, die in unterschiedlichen Zeitzonen laufen, benötigen oft eine UTC-basierte Wochentagslogik, um konsistent die richtige Aufgabe auszuführen.

JavaScript Beispiel
function istMontagUTC(date) {
    return date.getUTCDay() === 1;
}

console.log(istMontagUTC(new Date("2026-05-04T08:00:00Z")));
console.log(istMontagUTC(new Date("2026-05-05T08:00:00Z")));
Output
true
false

Hinweise & verwandte Methoden

  • Für die zeitzonenabhängige Variante: Date.prototype.getDay().
  • Es gibt keinen Setter setUTCDay() – um auf einen bestimmten Wochentag in UTC zu navigieren, muss mit setUTCDate() und der Differenz zum aktuellen Wochentag gearbeitet werden.
  • Für lokalisierte Wochentagsausgaben (z. B. „Freitag” auf Deutsch): Intl.DateTimeFormat mit { weekday: "long", timeZone: "UTC" }.
  • Auch hier gilt die Sonntag-zuerst-Konvention. Für ISO-8601 (Montag = 1, Sonntag = 7) ist eine manuelle Umrechnung notwendig.
/ Weiter

Zurück zu Date

Zur Übersicht