Die Methode Date.prototype.getFullYear() gibt das vollständige, vierstellige Jahr eines Date-Objekts in der lokalen Zeitzone zurück. Sie wurde mit ECMAScript 1.0 als Ersatz für die heute veraltete und unsichere Methode getYear() eingeführt, die nur Werte relativ zu 1900 lieferte. Damit ist getFullYear() die einzige verlässliche Methode, das Jahr aus einem Date-Objekt zu extrahieren – und sollte konsequent verwendet werden, um Y2K-typische Fehlerquellen zu vermeiden.

Funktionsweise

getFullYear() liefert das Jahr als vollständige Ganzzahl (z. B. 2026, 1995, -44 für 44 v. Chr.), unabhängig davon, wie das Date-Objekt erzeugt wurde:

  • Aus einem ISO-String (new Date("2026-05-01")): liefert das im String enthaltene Jahr.
  • Aus Komponenten (new Date(2026, 4, 1)): liefert die übergebene Jahresangabe.
  • Aus einem Timestamp (new Date(1777593600000)): liefert das Jahr in lokaler Zeitzone.

Die Methode berücksichtigt die lokale Zeitzone des Systems. Direkt am Jahreswechsel kann das relevant sein – etwa, wenn der Server in UTC läuft, der Nutzer aber in MEZ. Für eine zeitzonenunabhängige Variante steht getUTCFullYear() bereit.

Syntax

JavaScript Syntax
date.getFullYear()

Die Methode erwartet keine Parameter.

Rückgabewert

Eine Ganzzahl, die das Jahr in der lokalen Zeitzone vollständig repräsentiert. Negative Werte sind für Datumsangaben vor dem Jahr 1 möglich. Bei einem ungültigen Date-Objekt wird NaN zurückgegeben.

Beispiele

Jahr eines Datums auslesen

JavaScript Beispiel
const date = new Date("2026-05-01");
console.log(date.getFullYear());
Output
2026

Alter aus einem Geburtsdatum berechnen

Ein häufiger Anwendungsfall: das Alter einer Person berechnen. Achtung – die einfache Subtraktion liefert nur dann das richtige Ergebnis, wenn der Geburtstag im aktuellen Jahr bereits gewesen ist. Sonst muss eins abgezogen werden.

JavaScript Beispiel
function alterBerechnen(geburtsDatum) {
    const heute = new Date("2026-05-01");
    let alter = heute.getFullYear() - geburtsDatum.getFullYear();
    const monatDiff = heute.getMonth() - geburtsDatum.getMonth();

    if (monatDiff < 0 || (monatDiff === 0 && heute.getDate() < geburtsDatum.getDate())) {
        alter--;
    }
    return alter;
}

console.log(alterBerechnen(new Date("1990-07-15")));
console.log(alterBerechnen(new Date("1990-03-10")));
Output
35
36

Schaltjahr-Prüfung

Ein Schaltjahr liegt vor, wenn das Jahr durch 4 teilbar ist – außer es ist durch 100, aber nicht durch 400 teilbar.

JavaScript Beispiel
function istSchaltjahr(date) {
    const jahr = date.getFullYear();
    return (jahr % 4 === 0 && jahr % 100 !== 0) || jahr % 400 === 0;
}

console.log(istSchaltjahr(new Date("2024-01-01"))); // 2024
console.log(istSchaltjahr(new Date("2026-01-01"))); // 2026
console.log(istSchaltjahr(new Date("2000-01-01"))); // 2000
console.log(istSchaltjahr(new Date("1900-01-01"))); // 1900
Output
true
false
true
false

Ein Klassiker: das aktuelle Jahr für einen Footer ermitteln, ohne es jährlich manuell aktualisieren zu müssen.

JavaScript Beispiel
const jahr = new Date().getFullYear();
const footerText = `© ${jahr} Michael Belokon`;
console.log(footerText);
Output
© 2026 Michael Belokon

Vor Christus

Negative Werte sind erlaubt und repräsentieren Jahre vor Christi Geburt.

JavaScript Beispiel
const caesar = new Date(-44, 2, 15);
console.log(caesar.getFullYear());
Output
-44

Hinweise & verwandte Methoden

  • Niemals getYear() verwenden – diese Methode ist veraltet und liefert Werte relativ zu 1900 (z. B. 126 statt 2026).
  • Die zeitzonenunabhängige Variante ist Date.prototype.getUTCFullYear().
  • Für das Setzen des Jahres steht Date.prototype.setFullYear() zur Verfügung. Damit lässt sich auch ein Datum in einem anderen Jahr klonen.
  • Bei der Validierung von Datumsangaben aus Benutzereingaben sollte zusätzlich Number.isNaN(date.getTime()) geprüft werden, da getFullYear() selbst keinen Fehler wirft.
/ Weiter

Zurück zu Date

Zur Übersicht