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.ZonedDateTime : méthode toString()

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 toString() des instances de Temporal.ZonedDateTime retourne une chaîne de caractères représentant cette date et heure au format RFC 9557.

Syntaxe

js
toString()
toString(options)

Parameters

options Facultatif

Un objet contenant la propriété suivante :

calendarName Facultatif

Indique s'il faut afficher l'annotation du calendrier ([u-ca=calendar_id]) dans la valeur de retour. Les valeurs possibles sont :

"auto" (par défaut)

Inclut l'annotation du calendrier si le calendrier n'est pas "iso8601".

"always"

Inclut toujours l'annotation du calendrier.

"never"

N'inclut jamais l'annotation du calendrier. Cela rend la chaîne de caractères retournée non récupérable en tant que même instance de Temporal.ZonedDateTime, bien que la valeur de la date reste la même.

"critical"

Inclut toujours l'annotation du calendrier et ajoute un indicateur critique : [!u-ca=calendar_id]. Utile lors de l'envoi de la chaîne de caractères à certains systèmes, mais pas utile pour Temporal lui-même.

fractionalSecondDigits Facultatif

Soit un entier de 0 à 9, soit la chaîne de caractères "auto". La valeur par défaut est "auto". Si "auto", les zéros finaux sont supprimés des secondes fractionnaires. Sinon, la partie fractionnaire de la seconde contient ce nombre de chiffres, complétés par des zéros ou arrondis si nécessaire.

roundingMode Facultatif

Une chaîne de caractères définissant comment arrondir les chiffres fractionnaires au-delà de fractionalSecondDigits. Voir Intl.NumberFormat(). La valeur par défaut est "trunc".

smallestUnit Facultatif

Une chaîne de caractères définissant l'unité la plus petite à inclure dans la sortie. Les valeurs possibles sont "minute", "second", "millisecond", "microsecond" et "nanosecond", ou leurs formes plurielles, qui (sauf "minute") sont équivalentes aux valeurs de fractionalSecondDigits de 0, 3, 6, 9, respectivement. Si défini, alors fractionalSecondDigits est ignoré.

timeZoneName Facultatif

Indique s'il faut afficher le nom du fuseau horaire ([time_zone_id]) dans la valeur de retour. Les valeurs possibles sont :

"auto" (par défaut)

Inclut toujours le nom du fuseau horaire.

"never"

N'inclut jamais le nom du fuseau horaire. Cela rend la chaîne de caractères retournée non récupérable en tant que même instance de Temporal.ZonedDateTime.

"critical"

Inclut toujours le nom du fuseau horaire et ajoute un indicateur critique : [!time_zone_id]. Utile lors de l'envoi de la chaîne de caractères à certains systèmes, mais pas utile pour Temporal lui-même.

offset Facultatif

Indique s'il faut afficher le décalage (±HH:mm) dans la valeur de retour. Les valeurs possibles sont :

"auto" (par défaut)

Inclut toujours le décalage.

"never"

N'inclut jamais le décalage. Cela rend la chaîne de caractères retournée non récupérable en tant que même instance de Temporal.ZonedDateTime, si le fuseau horaire est inclus mais que l'heure est ambiguë, ou si le fuseau horaire n'est pas inclus.

Valeur de retour

Une chaîne de caractères au format RFC 9557 représentant cette date et heure. Le décalage et les annotations du calendrier/fuseau horaire sont inclus comme défini.

Exceptions

RangeError

Levée si l'une des options est invalide.

TypeError

Levée si options n'est pas un objet ou undefined.

Exemples

Utiliser la méthode toString()

js
const zdt = Temporal.ZonedDateTime.from(
  "2021-08-01T12:34:56[America/New_York]",
);
console.log(zdt.toString()); // '2021-08-01T12:34:56-04:00[America/New_York]'

Même pour le fuseau horaire UTC, le décalage est +00:00, et non Z :

js
const zdt = Temporal.ZonedDateTime.from("2021-08-01T12:34:56[UTC]");
console.log(zdt.toString()); // '2021-08-01T12:34:56+00:00[UTC]'

Utiliser des options

Pour des exemples avec des arrondis de temps, voir Temporal.PlainTime.prototype.toString(). Pour des exemples avec l'affichage des calendriers, voir Temporal.PlainDate.prototype.toString(). Ici, nous montrons comment contrôler l'affichage du fuseau horaire et du décalage :

js
const zdt = Temporal.ZonedDateTime.from(
  "2021-08-01T12:34:56[America/New_York]",
);
console.log(zdt.toString({ timeZoneName: "auto", offset: "never" })); // '2021-08-01T12:34:56[America/New_York]'
console.log(zdt.toString({ timeZoneName: "never", offset: "auto" })); // '2021-08-01T12:34:56-04:00'
console.log(zdt.toString({ timeZoneName: "never", offset: "never" })); // '2021-08-01T12:34:56'
console.log(zdt.toString({ timeZoneName: "critical", offset: "never" })); // '2021-08-01T12:34:56[!America/New_York]'

Spécifications

Spécification
Temporal
# sec-temporal.zoneddatetime.prototype.tostring

Compatibilité des navigateurs

Voir aussi