Date.prototype.setYear()

Veraltet: Diese Funktion wird nicht mehr empfohlen. Obwohl einige Browser sie möglicherweise noch unterstützen, könnte sie bereits aus den relevanten Webstandards entfernt worden sein, in Kürze entfernt werden oder nur noch aus Kompatibilitätsgründen bestehen. Vermeiden Sie die Verwendung und aktualisieren Sie vorhandenen Code, falls möglich; siehe die Kompatibilitätstabelle am Ende dieser Seite, um Ihre Entscheidung zu unterstützen. Beachten Sie, dass diese Funktion jederzeit aufhören könnte zu funktionieren.

Die Methode setYear() von Date-Instanzen setzt das Jahr für ein angegebenes Datum gemäß der lokalen Zeit.

Allerdings setzt die veraltete Methode setYear() Jahreswerte anders fest als die bevorzugte Methode setFullYear(). In manchen Fällen unterscheidet sie sich auch von der Art und Weise wie new Date() und Date.parse() Jahreswerte festlegen. Insbesondere bei zweistelligen Zahlen, wie 22 und 61:

  • setYear() interpretiert jede zweistellige Zahl als eine Verschiebung zu 1900; somit ergibt date.setYear(22) den Jahreswert 1922, und date.setYear(61) den Jahreswert 1961. (Im Gegensatz dazu ergibt new Date(61, 1) ebenfalls den Jahreswert 1961, aber new Date("2/1/22") ergibt den Jahreswert 2022; ähnlich verhält es sich mit Date.parse()).

  • setFullYear() führt keine spezielle Interpretation durch, sondern verwendet den wörtlichen zweistelligen Wert, um das Jahr festzulegen; somit ergibt date.setFullYear(61) den Jahreswert 0061, und date.setFullYear(22) den Jahreswert 0022.

Aufgrund dieser Unterschiede im Verhalten sollten Sie die veraltete Methode setYear() nicht mehr verwenden, sondern stattdessen die bevorzugte Methode setFullYear() nutzen.

Syntax

js
setYear(yearValue)

Parameter

yearValue

Eine Ganzzahl.

Rückgabewert

Ändert das Date-Objekt an Ort und Stelle und gibt seinen neuen Zeitstempel zurück. Wenn yearValue NaN ist (oder andere Werte, die zur Zwangskonvertierung zu NaN führen, wie undefined), wird das Datum auf Ungültiges Datum gesetzt, und NaN wird zurückgegeben.

Beschreibung

Wenn yearValue eine Zahl zwischen 0 und 99 (einschließlich) ist, wird das Jahr für dateObj auf 1900 + yearValue gesetzt. Andernfalls wird das Jahr für dateObj auf yearValue gesetzt.

Beispiele

Verwendung von setYear()

Die ersten beiden Zeilen setzen das Jahr auf 1996. Die dritte setzt das Jahr auf 2000.

js
const theBigDay = new Date();

theBigDay.setYear(96);
theBigDay.setYear(1996);
theBigDay.setYear(2000);

Spezifikationen

Specification
ECMAScript Language Specification
# sec-date.prototype.setyear

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch