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 statique from()

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 statique Temporal.PlainDateTime.from() crée un nouvel objet Temporal.PlainDateTime à partir d'un autre objet Temporal.PlainDateTime, d'un objet contenant des propriétés de date et d'heure, ou d'une chaîne de caractères au format RFC 9557.

Syntaxe

js
Temporal.PlainDateTime.from(info)
Temporal.PlainDateTime.from(info, options)

Paramètres

info

L'un des éléments suivants :

  • Une instance de Temporal.PlainDateTime, ce qui crée une copie de l'instance.
  • Une chaîne de caractères au format RFC 9557 contenant une date, éventuellement une heure, et éventuellement un calendrier.
  • Un objet contenant des propriétés reconnues soit par Temporal.PlainDate.from() (calendar, era, eraYear, year, month, monthCode, day) soit par Temporal.PlainTime.from() (hour, minute, second, millisecond, microsecond, nanosecond). L'objet info doit définir explicitement une année (comme year ou era et eraYear), un mois (comme month ou monthCode), et un jour ; les autres sont optionnels et seront définis à leurs valeurs par défaut.
options Facultatif

Un objet contenant la propriété suivante :

overflow Facultatif

Une chaîne de caractères définissant le comportement lorsqu'un composant de date est hors de portée (lors de l'utilisation de l'objet info). 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 info dans le calendrier défini.

Exceptions

TypeError

Levée dans l'un des cas suivants :

  • info n'est pas un objet ou une chaîne de caractères.
  • options n'est pas un objet ou undefined.
  • Les propriétés fournies sont insuffisantes pour déterminer de manière univoque une date. Vous devez généralement fournir une year (ou era et eraYear), un month (ou monthCode), et un day.
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 monthCode n'est jamais un code de mois valide dans ce calendrier.
  • Les propriétés numériques fournies sont hors de portée, et options.overflow est défini à "reject".
  • L'info n'est pas dans la plage représentable, qui est ±(108 + 1) jours, soit environ ±273 972,6 ans, à partir de l'époque Unix.

Exemples

Créer un objet PlainDateTime à partir d'un objet

js
// Année + mois + jour + heure + minute + seconde
const dt = Temporal.PlainDateTime.from({
  year: 2021,
  month: 7,
  day: 1,
  hour: 12,
  minute: 34,
  second: 56,
});
console.log(dt.toString()); // "2021-07-01T12:34:56"

Créer un objet PlainDateTime à partir d'une chaîne de caractères

js
const dt = Temporal.PlainDateTime.from("2021-07-01T12:34:56");
console.log(dt.toLocaleString()); // "7/1/2021, 12:34:56 PM" (en supposant la locale en-US)

Pour plus d'exemples, notamment concernant les différents calendriers et les paramètres de dépassement, voir Temporal.PlainDate.from() et Temporal.PlainTime.from().

Spécifications

Spécification
Temporal
# sec-temporal.plaindatetime.from

Compatibilité des navigateurs

Voir aussi