Date.prototype.setMonth()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

Die setMonth()-Methode von Date-Instanzen ändert den Monat und/oder Tag des Monats für dieses Datum entsprechend der Ortszeit.

Probieren Sie es aus

const event = new Date("August 19, 1975 23:15:30");

event.setMonth(3);

console.log(event.getMonth());
// Expected output: 3

console.log(event);
// Expected output: "Sat Apr 19 1975 23:15:30 GMT+0100 (CET)"
// Note: your timezone may vary

Syntax

js
setMonth(monthValue)
setMonth(monthValue, dateValue)

Parameter

monthValue

Ein ganzzahliger Wert, der den Monat repräsentiert: 0 für Januar, 1 für Februar und so weiter.

dateValue Optional

Ein ganzzahliger Wert von 1 bis 31, der den Tag des Monats repräsentiert.

Rückgabewert

Ändert das Date-Objekt direkt und gibt dessen neuen Zeitstempel zurück. Wenn ein Parameter NaN ist (oder andere Werte, die zu NaN konvertiert werden, wie undefined), wird das Datum auf Invalid Date gesetzt und es wird NaN zurückgegeben.

Beschreibung

Wenn Sie den dateValue-Parameter nicht angeben, wird der gleiche Wert verwendet, der von getDate() zurückgegeben wird.

Wenn ein von Ihnen angegebener Parameter außerhalb des erwarteten Bereichs liegt, werden andere Parameter und die Datumsinformationen im Date-Objekt entsprechend aktualisiert. Wenn Sie zum Beispiel 15 für monthValue angeben, wird das Jahr um 1 erhöht und 3 für den Monat verwendet.

Der aktuelle Tag des Monats hat Einfluss auf das Verhalten dieser Methode. Konzeptuell wird die Anzahl der Tage, die durch den aktuellen Tag des Monats gegeben sind, zum

  1. Tag des neuen Monats addiert, der als Parameter angegeben wurde, um das neue Datum zu erhalten. Zum Beispiel, wenn der aktuelle Wert der 31. Januar 2016 ist, wird ein Aufruf von setMonth mit einem Wert von 1 den 2. März 2016 zurückgeben. Das liegt daran, dass der Februar im Jahr 2016 29 Tage hatte.

Beispiele

Verwendung von setMonth()

js
const theBigDay = new Date();
theBigDay.setMonth(6);

// Watch out for end of month transitions
const endOfMonth = new Date(2016, 7, 31);
endOfMonth.setMonth(1);
console.log(endOfMonth); // Wed Mar 02 2016 00:00:00

Spezifikationen

Specification
ECMAScript® 2026 Language Specification
# sec-date.prototype.setmonth

Browser-Kompatibilität

Siehe auch