Temporal.PlainDate.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
Zugriffseigenschaft von Temporal.PlainDate
Instanzen gibt eine positive Ganzzahl zurück, die den 1-basierten Tagesindex im Monat dieses Datums darstellt, was dieselbe Tagesnummer ist, die Sie auf einem Kalender sehen würden. Sie ist kalender-abhängig.
Sie beginnt in der Regel bei 1 und ist kontinuierlich, aber nicht immer. Wenn Sie alle Tage in einem Monat durchlaufen möchten, verwenden Sie zuerst with()
mit { day: 1 }
(was auf den Anfang des Monats setzt, selbst wenn die tatsächliche Zahl nicht 1
ist), und verwenden Sie dann wiederholt add()
mit { days: 1 }
, bis sich der Monat ändert.
Hinweis:
Normalerweise ändert sich der Tagesindex nur beim Übergang von einem Kalendersystem zu einem anderen, wie beispielsweise vom julianischen zum gregorianischen Kalender. In der Praxis sind alle derzeit eingebauten Kalender proleptisch, was bedeutet, dass das Kalendersystem unbegrenzt in die Vergangenheit und Zukunft erweitert wird. Die Annahme, dass day
nicht kontinuierlich ist, schützt vor zukünftigen Einführungen nicht-proleptischer 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.PlainDate
Objekt mit dem gewünschten neuen Wert zu erstellen.
Beispiele
>Verwendung von day
const date = Temporal.PlainDate.from("2021-07-01"); // ISO 8601 calendar
console.log(date.day); // 1
const date2 = Temporal.PlainDate.from("2021-07-01[u-ca=chinese]");
console.log(date2.day); // 22; it is May 22 in the Chinese calendar
Durchlaufen aller Tage in einem Monat
const month = Temporal.PlainDate.from("2021-07-14"); // An arbitrary date in the month
for (
let day = month.with({ day: 1 });
day.month === month.month;
day = day.add({ days: 1 })
) {
console.log(day.day);
}
Ändern des Tages
const date = Temporal.PlainDate.from("2021-07-01");
const newDate = date.with({ day: 15 });
console.log(newDate.toString()); // 2021-07-15
Sie können auch add()
oder subtract()
verwenden, um eine bestimmte Anzahl von Tagen vom aktuellen Datum abzuweichen.
const date = Temporal.PlainDate.from("2021-07-01");
const newDate = date.add({ days: 14 });
console.log(newDate.toString()); // 2021-07-15
Standardmäßig beschränkt with()
den Tag auf die Bandbreite gültiger Werte. So können Sie { day: 1 }
verwenden, um den Tag auf den ersten Tag des Monats zu setzen, selbst wenn der erste Tag nicht die Zahl 1
hat. Ebenso wird Folgendes den Tag auf den letzten Tag des Monats setzen:
const date = Temporal.PlainDate.from("2021-07-01");
const lastDay = date.with({ day: Number.MAX_VALUE }); // 2021-07-31
Hinweis:
Vermeiden Sie die Verwendung von daysInMonth
, um den Tag auf den letzten Tag des Monats zu setzen. Der letzte Tag des Monats ist nicht immer derselbe wie die Anzahl der Tage im Monat, im seltenen Fall, dass ein Monat ein paar Tage übersprungene haben könnte.
Spezifikationen
Specification |
---|
Temporal> # sec-get-temporal.plaindate.prototype.day> |
Browser-Kompatibilität
Loading…
Siehe auch
Temporal.PlainDate
Temporal.PlainDate.prototype.with()
Temporal.PlainDate.prototype.add()
Temporal.PlainDate.prototype.subtract()
Temporal.PlainDate.prototype.year
Temporal.PlainDate.prototype.month
Temporal.PlainDate.prototype.daysInMonth
Temporal.PlainDate.prototype.dayOfWeek
Temporal.PlainDate.prototype.dayOfYear