Temporal.PlainMonthDay : méthode with()
Disponibilité limitée
Cette fonctionnalité n'est pas Compatible car elle ne fonctionne pas dans certains des navigateurs les plus utilisés.
La méthode with() des instances de Temporal.PlainMonthDay retourne un nouvel objet Temporal.PlainMonthDay représentant ce mois et ce jour avec certains champs remplacés par de nouvelles valeurs. Comme tous les objets Temporal sont conçus pour être immuables, cette méthode fonctionne essentiellement comme l'accesseur des champs du mois et du jour.
Il n'existe pas de moyen évident de créer un nouvel objet Temporal.PlainMonthDay représentant le même mois et le même jour dans un calendrier différent. Pour remplacer sa propriété calendarId, vous devez le convertir en un objet Temporal.PlainDate en utilisant toPlainDate(), changer le calendrier, puis le reconvertir.
Syntaxe
with(info)
with(info, options)
Paramètres
info-
Un objet contenant au moins une des propriétés reconnues par
Temporal.PlainMonthDay.from()(saufcalendar) :day,eraeteraYear,month,monthCode,year. Les propriétés non définies utilisent les valeurs du mois et du jour d'origine. Vous devez fournir l'année si et seulement si vous fournissezmonthet que le calendrier n'est pasiso8601. Vous n'avez besoin de fournir qu'un seul demonthoumonthCode, et un seul deeraeteraYearouyear, et l'autre sera mis à jour en conséquence. optionsFacultatif-
Un objet contenant les propriétés suivantes :
overflowFacultatif-
Une chaîne de caractères définissant le comportement lorsque un composant de date est hors plage. Valeurs possibles :
"constrain"(par défaut)-
Le composant de date est contraint à la plage valide.
"reject"-
Un objet
RangeErrorest levé si le composant de date est hors plage.
Valeur de retour
Un nouvel objet Temporal.PlainMonthDay, où les champs définis dans info qui ne sont pas undefined sont remplacés par les valeurs correspondantes, et le reste des champs est copié à partir de la date d'origine.
Exceptions
TypeError-
Levée dans l'un des cas suivants :
infon'est pas un objet.optionsn'est pas un objet ou estundefined.
RangeError-
Levée dans l'un des cas suivants :
- Les propriétés fournies qui définissent le même composant sont incohérentes.
- Les propriétés non numériques fournies ne sont pas valides ; par exemple, si
monthCoden'est jamais un code de mois valide dans ce calendrier. - Les propriétés numériques fournies sont hors plage, et
options.overflowest défini sur"reject". - Si l'année est fournie, le calendrier n'est pas
iso8601, et l'année n'est pas dans la plage représentable, qui est de-271821à275760.
Exemples
>Utiliser la méthode with()
const md = Temporal.PlainMonthDay.from("07-01");
const newMd = md.with({ day: 2 });
console.log(newMd.toString()); // "07-02"
Pour plus d'exemples, consultez la documentation des propriétés individuelles qui peuvent être définies en utilisant with().
Spécifications
| Spécification |
|---|
| Temporal> # sec-temporal.plainmonthday.prototype.with> |
Compatibilité des navigateurs
Voir aussi
- L'objet
Temporal.PlainMonthDay - La méthode statique
Temporal.PlainMonthDay.from()