Die Methode Date.prototype.getUTCMonth() gibt den 0-basierten Monatsindex eines Date-Objekts in der koordinierten Weltzeit (UTC) zurück. Wie bei getMonth() entspricht 0 dem Januar und 11 dem Dezember. Die UTC-Variante ist überall dort die richtige Wahl, wo eine konsistente Monatsangabe über Zeitzonen hinweg erforderlich ist – beispielsweise beim Erzeugen monatlicher Reports, beim Aufbau von Dateinamen oder in Datenbankabfragen mit Monatspartitionen.

Funktionsweise

getUTCMonth() ignoriert die lokale Zeitzone. Insbesondere am Monatswechsel kann der UTC-Monat vom lokalen abweichen, wenn der Zeitpunkt nahe Mitternacht liegt – etwa, wenn ein Server in Tokio (UTC+9) den 1. Mai um 02:00 Uhr loggt, während es in UTC noch der 30. April 17:00 Uhr ist.

Die Zuordnung der Werte ist identisch zu getMonth():

WertMonat
0Januar
1Februar
2März
11Dezember

Syntax

JavaScript Syntax
date.getUTCMonth()

Die Methode erwartet keine Parameter.

Rückgabewert

Eine Ganzzahl zwischen 0 und 11, die den 0-basierten Monatsindex in UTC repräsentiert. Bei einem ungültigen Datum wird NaN zurückgegeben.

Beispiele

UTC-Monat auslesen

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

Monatsabhängiger Report-Pfad

JavaScript Beispiel
function reportPfad(date) {
    const yyyy = date.getUTCFullYear();
    const mm = String(date.getUTCMonth() + 1).padStart(2, "0");
    return `/reports/${yyyy}/${mm}/`;
}

console.log(reportPfad(new Date("2026-05-15T08:00:00Z")));
Output
/reports/2026/05/

Quartal in UTC ableiten

JavaScript Beispiel
function quartalUTC(date) {
    return Math.floor(date.getUTCMonth() / 3) + 1;
}

console.log(quartalUTC(new Date("2026-02-15T00:00:00Z")));
console.log(quartalUTC(new Date("2026-08-30T00:00:00Z")));
Output
1
3

Lokaler vs. UTC-Monat am Monatsende

JavaScript Beispiel
// 30. April 2026 23:00 Uhr in São Paulo (UTC-3)
const date = new Date("2026-04-30T23:00:00-03:00");
console.log(`Lokal: ${date.getMonth() + 1}`);
console.log(`UTC:   ${date.getUTCMonth() + 1}`);
Output
Lokal: 5
UTC:   5

In UTC ist es bereits der 1. Mai 02:00 Uhr.

Hinweise & verwandte Methoden

  • Für die lokale Variante: Date.prototype.getMonth().
  • Zum Setzen: Date.prototype.setUTCMonth(). Werte über 11 oder unter 0 führen zu einem Jahresüberlauf in UTC.
  • Die 0-basierte Zählung ist auch hier ein Stolperstein – bei der Ausgabe muss in der Regel + 1 addiert werden.
  • Beim Erzeugen eines Date-Objekts aus UTC-Komponenten kommt Date.UTC(jahr, monat, tag) zum Einsatz.
/ Weiter

Zurück zu Date

Zur Übersicht