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

Temporal.PlainDateTime : méthode subtract()

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 subtract() des instances de Temporal.PlainDateTime retourne un nouvel objet Temporal.PlainDateTime représentant cette date et heure reculée d'une durée donnée (sous une forme convertible par Temporal.Duration.from()).

Si vous souhaitez soustraire deux dates et obtenir une durée, utilisez plutôt since() ou until().

Syntaxe

js
subtract(duration)
subtract(duration, options)

Paramètres

duration

Une chaîne de caractères, un objet ou une instance de Temporal.Duration représentant une durée à soustraire de cette date et heure. Elle est convertie en un objet Temporal.Duration en utilisant le même algorithme que Temporal.Duration.from().

options Facultatif

Un objet contenant la propriété suivante :

overflow Facultatif

Une chaîne de caractères définissant le comportement lorsque un composant de date est hors de portée. Les valeurs possibles sont :

"constrain" (par défaut)

Le composant de date est contraint à la plage valide.

"reject"

Un objet RangeError est levé si le composant de date est hors de portée.

Valeur de retour

Un nouvel objet Temporal.PlainDateTime représentant la date et l'heure définies par le PlainDateTime d'origine, moins la durée.

Exceptions

RangeError

Levée si le résultat n'est pas dans la plage représentable, qui est ±(108 + 1) jours, soit environ ±273 972,6 ans, à partir de l'époque Unix.

Description

Soustraire une durée est équivalent à ajouter sa négation, donc toutes les mêmes considérations s'appliquent.

Exemples

Soustraire une durée

js
const start = Temporal.PlainDateTime.from("2022-01-01T12:34:56");
const end = start.subtract({
  years: 1,
  months: 2,
  weeks: 3,
  days: 4,
  hours: 5,
  minutes: 6,
  seconds: 7,
  milliseconds: 8,
});
console.log(end.toString()); // 2020-10-07T07:28:48.992

Spécifications

Spécification
Temporal
# sec-temporal.plaindatetime.prototype.subtract

Compatibilité des navigateurs

Voir aussi