Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

Constructeur Temporal.PlainMonthDay()

Disponibilité limitée

Cette fonctionnalité n'est pas Compatible car elle ne fonctionne pas dans certains des navigateurs les plus utilisés.

Expérimental: Il s'agit d'une technologie expérimentale.
Vérifiez attentivement le tableau de compatibilité des navigateurs avant de l'utiliser en production.

Le constructeur Temporal.PlainMonthDay() crée des objets Temporal.PlainMonthDay.

Ce constructeur permet de créer des instances en fournissant directement les données sous-jacentes. Comme pour les autres classes Temporal, il est généralement recommandé d'utiliser la méthode statique Temporal.PlainMonthDay.from(), qui accepte une variété de types d'entrée.

Syntaxe

js
new Temporal.PlainMonthDay(month, day)
new Temporal.PlainMonthDay(month, day, calendar)
new Temporal.PlainMonthDay(month, day, calendar, referenceYear)

Note : Temporal.PlainMonthDay() ne peut être construit qu'avec new. Tenter de l'appeler sans new lève un TypeError.

Attention : Évitez d'utiliser les paramètres calendar et referenceYear, car equals() prendra en compte l'année de référence pour l'égalité, ce qui peut amener deux mois et jours équivalents à être considérés comme différents si leurs années de référence diffèrent. Pour créer un objet Temporal.PlainMonthDay avec un calendrier non ISO, utilisez la méthode statique Temporal.PlainMonthDay.from().

Paramètres

month

Un nombre, tronqué en entier, représentant le mois dans le système de calendrier ISO.

day

Un nombre, tronqué en entier, représentant le jour du mois dans le système ISO.

calendar Facultatif

Une chaîne de caractères représentant le calendrier à utiliser. Voir Intl.supportedValuesOf() pour la liste des calendriers couramment pris en charge. Par défaut "iso8601". Notez que, quel que soit le calendar, les valeurs referenceYear, month et day doivent être exprimées dans le système ISO 8601.

referenceYear Facultatif

Un nombre, tronqué en entier, représentant l'année dans le système ISO. Par défaut 1972. Le même mois et jour ISO peut représenter des dates différentes selon les années dans des calendriers non ISO. Par exemple, 2021-07-01 et 1972-07-01 peuvent correspondre à des mois et jours différents dans un calendrier non grégorien et simplement définir "07-01" peut être insuffisant pour déterminer de manière non ambiguë un mois-jour dans le calendrier cible. Il est donc généralement souhaitable de fournir un referenceYear pour les calendriers non ISO.

Valeur de retour

Un nouvel objet Temporal.PlainMonthDay, représentant le mois et le jour de la date définie par referenceYear, month, day (dans le calendrier ISO), interprété selon le calendrier défini par calendar.

Exceptions

TypeError

Levée si calendar n'est pas une chaîne de caractères ou est undefined.

RangeError

Levée dans l'un des cas suivants :

  • referenceYear, month ou day n'est pas un nombre fini.
  • La combinaison de referenceYear, month et day ne représente pas une date valide dans le système ISO, ou n'est pas dans la plage représentable, soit ±(108 + 1) jours (≈ ±273 972,6 années) par rapport à l'époque Unix.
  • calendar n'est pas un identifiant de calendrier valide.

Exemples

Utiliser Temporal.PlainMonthDay()

js
const md = new Temporal.PlainMonthDay(7, 1);
console.log(md.toString()); // 07-01

const md2 = new Temporal.PlainMonthDay(7, 1, "chinese");
console.log(md2.toString()); // 1972-07-01[u-ca=chinese]

const md3 = new Temporal.PlainMonthDay(7, 1, "chinese", 2021);
console.log(md3.toString()); // 2021-07-01[u-ca=chinese]

Utilisation inappropriée

Évitez d'utiliser les paramètres calendar et referenceYear, sauf si vous savez que le referenceYear est l'année canonique choisie par Temporal.PlainMonthDay.from() pour le même mois et jour.

js
const md = new Temporal.PlainMonthDay(7, 1, "chinese", 2021);
const md2 = Temporal.PlainMonthDay.from("2021-07-01[u-ca=chinese]");
console.log(md.equals(md2)); // false
console.log(md.toString()); // 2021-07-01[u-ca=chinese]
console.log(md2.toString()); // 1972-07-02[u-ca=chinese]

Spécifications

Spécification
Temporal
# sec-temporal-plainmonthday-constructor

Compatibilité des navigateurs

Voir aussi