Temporal.PlainDate : propriété day
Disponibilité limitée
Cette fonctionnalité n'est pas Compatible car elle ne fonctionne pas dans certains des navigateurs les plus utilisés.
La propriété d'accesseur day des instances de Temporal.PlainDate retourne un entier positif représentant l'indice du jour dans le mois de cette date, basé sur 1, ce qui correspond au numéro de jour que vous verriez sur un calendrier. Elle dépend du calendrier.
Elle commence généralement à 1 et est continue, mais pas toujours. Si vous souhaitez parcourir tous les jours d'un mois, utilisez d'abord with() avec { day: 1 } (ce qui définit le début du mois, même si le numéro réel n'est pas 1), puis utilisez de manière répétée add() avec { days: 1 }, jusqu'à ce que le mois change.
Note :
Habituellement, l'indice du jour ne change que lors du passage d'un système de calendrier à un autre, comme du calendrier julien au calendrier grégorien. En pratique, tous les calendriers intégrés actuellement sont proleptiques, ce qui signifie que le système de calendrier est étendu indéfiniment dans le passé et le futur. Supposer que day n'est pas continu protège contre les futures introductions de calendriers non proleptiques.
Le mutateur d'accesseur de day est undefined. Vous ne pouvez pas modifier cette propriété directement. Utilisez la méthode with() pour créer un nouvel objet Temporal.PlainDate avec la nouvelle valeur souhaitée.
Exemples
>Utiliser la propriété day
const date = Temporal.PlainDate.from("2021-07-01"); // calendrier ISO 8601
console.log(date.day); // 1
const date2 = Temporal.PlainDate.from("2021-07-01[u-ca=chinese]");
console.log(date2.day); // 22; c'est le 22 mai dans le calendrier chinois
Parcourir tous les jours d'un mois
const month = Temporal.PlainDate.from("2021-07-14"); // Une date arbitraire dans le mois
for (
let day = month.with({ day: 1 });
day.month === month.month;
day = day.add({ days: 1 })
) {
console.log(day.day);
}
Changer le jour
const date = Temporal.PlainDate.from("2021-07-01");
const newDate = date.with({ day: 15 });
console.log(newDate.toString()); // 2021-07-15
Vous pouvez également utiliser add() ou subtract() pour déplacer un certain nombre de jours à partir de la date actuelle.
const date = Temporal.PlainDate.from("2021-07-01");
const newDate = date.add({ days: 14 });
console.log(newDate.toString()); // 2021-07-15
Par défaut, with() contraint le jour à la plage de valeurs valides. Vous pouvez donc utiliser { day: 1 } pour définir le jour au premier jour du mois, même si le premier jour n'a pas le numéro 1. De même, ce qui suit définira le jour au dernier jour du mois :
const date = Temporal.PlainDate.from("2021-07-01");
const lastDay = date.with({ day: Number.MAX_VALUE }); // 2021-07-31
Note :
Évitez d'utiliser daysInMonth pour définir le jour au dernier jour du mois. Le dernier jour du mois n'est pas toujours le même que le nombre de jours dans le mois, dans le cas rare où un mois peut avoir quelques jours sautés.
Spécifications
| Spécification |
|---|
| Temporal> # sec-get-temporal.plaindate.prototype.day> |
Compatibilité des navigateurs
Voir aussi
- L'objet
Temporal.PlainDate - La méthode
Temporal.PlainDate.prototype.with() - La méthode
Temporal.PlainDate.prototype.add() - La méthode
Temporal.PlainDate.prototype.subtract() - La propriété
Temporal.PlainDate.prototype.year - La propriété
Temporal.PlainDate.prototype.month - La propriété
Temporal.PlainDate.prototype.daysInMonth - La propriété
Temporal.PlainDate.prototype.dayOfWeek - La propriété
Temporal.PlainDate.prototype.dayOfYear