Temporal.ZonedDateTime.prototype.day

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.

Die day Zugriffs-Eigenschaft von Temporal.ZonedDateTime-Instanzen gibt eine positive ganze Zahl zurück, die den 1-basierten Tag im Monat dieses Datums darstellt, und entspricht damit der Tageszahl, die Sie auf einem Kalender sehen würden. Sie ist abhängig vom Kalender.

Der Set-Zugriff von day ist undefined. Sie können diese Eigenschaft nicht direkt ändern. Verwenden Sie die with()-Methode, um ein neues Temporal.ZonedDateTime-Objekt mit dem gewünschten neuen Wert zu erstellen.

Für allgemeine Informationen und weitere Beispiele siehe Temporal.PlainDate.prototype.day.

Bei PlainDate kann day nur dann nicht kontinuierlich sein, wenn der Kalender Tage überspringt. Bei ZonedDateTime kann day auch dann nicht kontinuierlich sein, wenn die Zeitzone ihre Verschiebung um 24 Stunden ändert; dies ist tatsächlich vorgekommen. Siehe das folgende Beispiel.

Beispiele

Verwendung von day

js
const dt = Temporal.ZonedDateTime.from("2021-07-01[America/New_York]"); // ISO 8601 calendar
console.log(dt.day); // 1

Nicht kontinuierlicher Tag

Um die Zeiten besser mit seinen Handelspartnern in Asien abzugleichen, änderte das Land Samoa seine Zeitzone auf die andere Seite der Internationalen Datumsgrenze und verschob seine Verschiebung von -10:00 auf +14:00 (Sommerzeit). Dies führte zu einer 24-stündigen plötzlichen Änderung der lokalen Zeit, wodurch der Tag des 30. Dezember 2011 vollständig übersprungen wurde. 2011-12-29T23:59:59-10:00[Pacific/Apia] folgt unmittelbar 2011-12-31T00:00:00+14:00[Pacific/Apia].

js
const dt = Temporal.ZonedDateTime.from(
  "2011-12-29T23:59:59-10:00[Pacific/Apia]",
);
console.log(dt.day); // 29
const nextDay = dt.add({ seconds: 1 });
console.log(nextDay.day); // 31

Aus diesem Grund sollten Sie immer add() und subtract() bevorzugen, um Daten und Uhrzeiten zu manipulieren, anstatt die day-Eigenschaft direkt zu ändern.

Spezifikationen

Specification
Temporal
# sec-get-temporal.zoneddatetime.prototype.day

Browser-Kompatibilität

Siehe auch