Temporal.PlainDate : propriété daysInMonth
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 daysInMonth des instances de Temporal.PlainDate retourne un entier positif représentant le nombre de jours dans le mois de cette date. Elle dépend du calendrier.
Notez que le nombre de jours dans le mois n'est pas toujours égal au day du dernier jour du mois, dans le cas rare où un mois peut avoir quelques jours sautés.
Le mutateur d'accesseur de daysInMonth est undefined. Vous ne pouvez pas modifier cette propriété directement.
Exemples
>Utiliser la propriété daysInMonth
const date = Temporal.PlainDate.from("2021-07-01");
console.log(date.daysInMonth); // 31
const date2 = Temporal.PlainDate.from("2021-02-01");
console.log(date2.daysInMonth); // 28 ; 2021 n'est pas une année bissextile
const date3 = Temporal.PlainDate.from("2020-02-01");
console.log(date3.daysInMonth); // 29 ; 2020 est une année bissextile
const date4 = Temporal.PlainDate.from("2021-04-01[u-ca=chinese]");
console.log(date4.month); // 2
console.log(date4.daysInMonth); // 30 ; le 2e mois chinois a 30 jours
Changer pour l'avant-dernier jour du mois
Vous pouvez utiliser daysInMonth pour passer à l'avant-dernier jour du mois :
const date = Temporal.PlainDate.from("2021-07-01");
const secondLastDay = date.with({ day: date.daysInMonth - 1 });
console.log(secondLastDay.toString()); // 2021-07-30
Ce n'est pas totalement sûr, cependant, car daysInMonth n'est pas garanti d'avoir un lien avec l'indice du jour. Voici une manière plus sûre d'obtenir l'avant-dernier jour :
const date = Temporal.PlainDate.from("2021-07-01");
const secondLastDay = date
.with({ day: Number.MAX_SAFE_INTEGER })
.subtract({ days: 1 });
console.log(secondLastDay.toString()); // 2021-07-30
Spécifications
| Spécification |
|---|
| Temporal> # sec-get-temporal.plaindate.prototype.daysinmonth> |
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.day - La propriété
Temporal.PlainDate.prototype.daysInWeek - La propriété
Temporal.PlainDate.prototype.daysInYear