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

Disponibilité limitée

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

L'objet Temporal.PlainDateTime représente une date (date du calendrier) et une heure (heure murale) sans fuseau horaire. Il est fondamentalement représenté comme une combinaison d'une date (avec un système de calendrier associé) et d'une heure.

Description

Un PlainDateTime est essentiellement la combinaison d'un Temporal.PlainDate et d'un Temporal.PlainTime. Comme les informations de date et d'heure n'ont pas beaucoup d'interaction, toutes les informations générales sur les propriétés de date sont documentées dans l'objet PlainDate, et toutes les informations générales sur les propriétés de temps sont documentées dans l'objet PlainTime.

Si la date et l'heure représentent un instant défini qui doit rester invariant à travers les fuseaux horaires, vous devriez utiliser l'objet Temporal.ZonedDateTime à la place. Utilisez PlainDateTime lorsque vous devez représenter un événement se produisant à une heure murale spécifique qui peut être un instant différent dans différents fuseaux horaires.

Format RFC 9557

Les objets PlainDateTime peuvent être sérialisés et analysés en utilisant le format RFC 9557 (angl.), une extension du format ISO 8601 / RFC 3339 (angl.). La chaîne de caractères a la forme suivante (les espaces sont uniquement pour la lisibilité et ne doivent pas être présents dans la chaîne de caractères réelle) :

YYYY-MM-DD T HH:mm:ss.sssssssss [u-ca=calendar_id]
YYYY

Soit un nombre à quatre chiffres, soit un nombre à six chiffres avec un signe + ou -.

MM

Un nombre à deux chiffres de 01 à 12.

DD

Un nombre à deux chiffres de 01 à 31. Les composants YYYY, MM et DD peuvent être séparés par - ou rien.

T Facultatif

Le séparateur ca valeur de date et d'heure, qui peut être T, t ou un espace. Présent si et seulement si HH est présent.

HH Facultatif

Un nombre à deux chiffres de 00 à 23. Par défaut 00.

mm Facultatif

Un nombre à deux chiffres de 00 à 59. Par défaut 00.

ss.sssssssss Facultatif

Un nombre à deux chiffres de 00 à 59. Peut être suivi optionnellement d'un . ou , et d'un à neuf chiffres. Par défaut 00. Les composants HH, mm et ss peuvent être séparés par : ou rien. Vous pouvez omettre soit ss seul, soit ss et mm, donc l'heure peut être sous trois formes : HH, HH:mm ou HH:mm:ss.sssssssss.

[u-ca=calendar_id] Facultatif

Remplacez calendar_id par le calendrier à utiliser. Voir Intl.supportedValuesOf() pour une liste des types de calendriers couramment pris en charge. Par défaut [u-ca=iso8601]. Peut avoir un drapeau critique en préfixant la clé avec ! : par exemple, [!u-ca=iso8601]. Ce drapeau indique généralement aux autres systèmes qu'il ne peut pas être ignoré s'ils ne le prennent pas en charge. L'analyseur Temporal générera une erreur si les annotations contiennent deux annotations de calendrier ou plus et qu'une d'entre elles est critique. Notez que le YYYY-MM-DD est toujours interprété comme une date du calendrier ISO 8601, puis converti en calendrier défini.

Comme entrée, vous pouvez éventuellement inclure le décalage et l'identifiant du fuseau horaire, dans le même format que ZonedDateTime, mais ils seront ignorés. Notez que le décalage ne doit pas être Z. Les autres annotations au format [clé=valeur] sont également ignorées, et elles ne doivent pas avoir le drapeau critique.

Lors de la sérialisation, vous pouvez configurer le nombre de chiffres fractionnaires pour les secondes, décider d'afficher l'identifiant du calendrier et ajouter un drapeau critique pour celui-ci.

Constructeur

Temporal.PlainDateTime() Expérimental

Crée un nouvel objet Temporal.PlainDateTime en fournissant directement les données sous-jacentes.

Méthodes statiques

Temporal.PlainDateTime.compare()

Retourne un nombre (-1, 0 ou 1) indiquant si le premier valeur de date et d'heure vient avant, est le même que, ou vient après le deuxième ca valeur de date et d'heure. Équivaut à comparer d'abord leurs dates, puis à comparer leurs heures si les dates sont les mêmes.

Temporal.PlainDateTime.from()

Crée un nouvel objet Temporal.PlainDateTime à partir d'un autre objet Temporal.PlainDateTime, d'un objet avec des propriétés de date et d'heure, ou d'une chaîne de caractères au format RFC 9557.

Propriétés d'instance

Ces propriétés sont définies sur Temporal.PlainDateTime.prototype et partagées par toutes les instances de Temporal.PlainDateTime.

Temporal.PlainDateTime.prototype.calendarId

Retourne une chaîne de caractères représentant le calendrier utilisé pour interpréter la date ISO 8601 interne.

Temporal.PlainDateTime.prototype.constructor

La fonction constructeur qui a créé l'objet instance. Pour les instances de Temporal.PlainDateTime, la valeur initiale est le constructeur Temporal.PlainDateTime().

Temporal.PlainDateTime.prototype.day

Retourne un entier positif représentant l'indice du jour dans le mois de cette date, basé sur 1, ce qui correspond au même numéro de jour que vous verriez sur un calendrier. Dépend du calendrier. Généralement commence à 1 et est continu, mais pas toujours.

Temporal.PlainDateTime.prototype.dayOfWeek

Retourne un entier positif représentant l'indice du jour dans la semaine de cette date, basé sur 1. Les jours de la semaine sont numérotés séquentiellement de 1 à daysInWeek, chaque numéro correspondant à son nom. Dépend du calendrier. 1 représente généralement le lundi dans le calendrier, même lorsque les locales utilisant le calendrier peuvent considérer un autre jour comme le premier jour de la semaine (voir Intl.Locale.prototype.getWeekInfo()).

Temporal.PlainDateTime.prototype.dayOfYear

Retourne un entier positif représentant l'indice du jour dans l'année de cette date, basé sur 1. Le premier jour de cette année est 1, et le dernier jour est le daysInYear. Dépend du calendrier.

Temporal.PlainDateTime.prototype.daysInMonth

Retourne un entier positif représentant le nombre de jours dans le mois de cette date. Dépend du calendrier.

Temporal.PlainDateTime.prototype.daysInWeek

Retourne un entier positif représentant le nombre de jours dans la semaine de cette date. Dépend du calendrier. Pour le calendrier ISO 8601, c'est toujours 7, mais dans d'autres systèmes de calendrier, cela peut varier d'une semaine à l'autre.

Temporal.PlainDateTime.prototype.daysInYear

Retourne un entier positif représentant le nombre de jours dans l'année de cette date. Dépend du calendrier. Pour le calendrier ISO 8601, c'est 365, ou 366 dans une année bissextile.

Temporal.PlainDateTime.prototype.era

Retourne une chaîne de caractères, en minuscules, spécifique au calendrier représentant l'ère de cette date, ou undefined si le calendrier n'utilise pas d'ères (par exemple, ISO 8601). era et eraYear identifient ensemble de manière unique une année dans un calendrier, de la même manière que year. Dépend du calendrier. Pour le calendrier grégorien, c'est soit "ce", soit "bce".

Temporal.PlainDateTime.prototype.eraYear

Retourne un entier non négatif représentant l'année de cette date dans l'ère, ou undefined si le calendrier n'utilise pas d'ères (par exemple, ISO 8601). L'indice de l'année commence généralement à 1 (plus courant) ou 0, et les années dans une ère peuvent diminuer avec le temps (par exemple, BCE grégorien). era et eraYear identifient ensemble de manière unique une année dans un calendrier, de la même manière que year. Dépend du calendrier.

Temporal.PlainDateTime.prototype.hour

Retourne un entier de 0 à 23 représentant la composante heure de cette heure.

Temporal.PlainDateTime.prototype.inLeapYear

Retourne un booléen indiquant si cette date se trouve dans une année bissextile. Une année bissextile est une année qui a plus de jours (en raison d'un jour ou d'un mois intercalaire) qu'une année commune. Dépend du calendrier.

Temporal.PlainDateTime.prototype.microsecond

Retourne un entier de 0 à 999 représentant la composante microseconde (10-6 seconde) de cette heure.

Temporal.PlainDateTime.prototype.millisecond

Retourne un entier de 0 à 999 représentant la composante milliseconde (10-3 seconde) de cette heure.

Temporal.PlainDateTime.prototype.minute

Retourne un entier de 0 à 59 représentant la composante minute de cette heure.

Temporal.PlainDateTime.prototype.month

Retourne un entier positif représentant l'indice du mois dans l'année de cette date, basé sur 1. Le premier mois de cette année est 1, et le dernier mois est le monthsInYear. Dépend du calendrier. Notez que contrairement à Date.prototype.getMonth(), l'indice est basé sur 1. Si le calendrier a des mois intercalaires, alors le mois avec le même monthCode peut avoir des indices de month différents pour différentes années.

Temporal.PlainDateTime.prototype.monthCode

Retourne une chaîne de caractères d'un calendrier défini représentant le mois de cette date. Dépend du calendrier. Habituellement, c'est M suivi d'un numéro de mois à deux chiffres. Pour les mois intercalaires, c'est le code du mois précédent suivi de L. Si le mois intercalaire est le premier mois de l'année, le code est M00L.

Temporal.PlainDateTime.prototype.monthsInYear

Retourne un entier positif représentant le nombre de mois dans l'année de cette date. Dépend du calendrier. Pour le calendrier ISO 8601, c'est toujours 12, mais dans d'autres systèmes de calendrier, cela peut varier.

Temporal.PlainDateTime.prototype.nanosecond

Retourne un entier de 0 à 999 représentant la composante nanoseconde (10-9 seconde) de cette heure.

Temporal.PlainDateTime.prototype.second

Retourne un entier de 0 à 59 représentant la composante seconde de cette heure.

Temporal.PlainDateTime.prototype.weekOfYear

Retourne un entier positif représentant l'indice de la semaine dans l'année de cette date, basé sur 1, ou undefined si le calendrier n'a pas de système de semaine bien défini. La première semaine de l'année est 1. Dépend du calendrier. Notez que pour ISO 8601, les premiers et derniers jours de l'année peuvent être attribués à la dernière semaine de l'année précédente ou à la première semaine de l'année suivante.

Temporal.PlainDateTime.prototype.year

Retourne un entier représentant le nombre d'années de cette date par rapport au début d'une année d'époque spécifique au calendrier. Dépend du calendrier. Habituellement, l'année 1 est soit la première année de la dernière ère, soit l'année ISO 8601 0001. Si l'époque est au milieu de l'année, cette année aura la même valeur avant et après la date de début de l'ère.

Temporal.PlainDateTime.prototype.yearOfWeek

Retourne un entier représentant l'année à associer à l'indice de la semaine de cette date, ou undefined si le calendrier n'a pas de système de semaine bien défini. Dépend du calendrier. Habituellement, c'est l'année de la date, mais pour ISO 8601, les premiers et derniers jours de l'année peuvent être attribués à la dernière semaine de l'année précédente ou à la première semaine de l'année suivante, ce qui fait que yearOfWeek peut différer de 1.

Temporal.PlainDateTime.prototype[Symbol.toStringTag]

La valeur initiale de la propriété [Symbol.toStringTag] est la chaîne "Temporal.PlainDateTime". Cette propriété est utilisée dans Object.prototype.toString().

Méthodes d'instance

Temporal.PlainDateTime.prototype.add()

Retourne un nouvel objet Temporal.PlainDateTime représentant cette valeur de date et d'heure avancée d'une durée donnée (sous une forme convertible par Temporal.Duration.from()).

Temporal.PlainDateTime.prototype.equals()

Retourne true si cette valeur de date et d'heure est équivalente en valeur à une autre date et d'heure (sous une forme convertible par Temporal.PlainDateTime.from()), et false sinon. Elles sont comparées à la fois par leurs valeurs de date et d'heure et par leurs calendriers, donc deux dates-heures de calendriers différents peuvent être considérées comme égales par Temporal.PlainDateTime.compare() mais pas par equals().

Temporal.PlainDateTime.prototype.round()

Retourne un nouvel objet Temporal.PlainDateTime représentant cette valeur de date et d'heure arrondie à l'unité donnée.

Temporal.PlainDateTime.prototype.since()

Retourne un nouvel objet Temporal.Duration représentant la durée entre une autre valeur de date et d'heure (sous une forme convertible par Temporal.PlainDateTime.from()) et cette valeur de date et d'heure. La durée est positive si l'autre valeur de date et d'heure est avant cette valeur de date et d'heure, et négative si elle est après.

Temporal.PlainDateTime.prototype.subtract()

Retourne un nouvel objet Temporal.PlainDateTime représentant cette valeur de date et d'heure reculée d'une durée donnée (sous une forme convertible par Temporal.Duration.from()).

Temporal.PlainDateTime.prototype.toJSON()

Retourne une chaîne de caractères représentant cette valeur de date et d'heure dans le même format RFC 9557 que l'appel de toString(). Destiné à être appelé implicitement par JSON.stringify().

Temporal.PlainDateTime.prototype.toLocaleString()

Retourne une chaîne de caractères avec une représentation sensible à la langue de cette valeur de date et d'heure.

Temporal.PlainDateTime.prototype.toPlainDate()

Retourne un nouvel objet Temporal.PlainDate représentant la partie date (année, mois, jour) de cette valeur de date et d'heure dans le même système de calendrier.

Temporal.PlainDateTime.prototype.toPlainTime()

Retourne un nouvel objet Temporal.PlainTime représentant la partie temps (heure, minute, seconde et composantes de sous-seconde) de cette valeur de date et d'heure.

Temporal.PlainDateTime.prototype.toString()

Retourne une chaîne de caractères représentant cette valeur de date et d'heure dans le format RFC 9557.

Temporal.PlainDateTime.prototype.toZonedDateTime()

Retourne une nouvelle instance de Temporal.ZonedDateTime représentant la même date et heure que le Temporal.PlainDateTime, mais dans le fuseau horaire défini.

Temporal.PlainDateTime.prototype.until()

Retourne un nouvel objet Temporal.Duration représentant la durée entre cette valeur de date et d'heure et une autre valeur de date et d'heure (sous une forme convertible par Temporal.PlainDateTime.from()). La durée est positive si l'autre valeur de date et d'heure est après cette ca valeur de date et d'heure, et négative si elle est avant.

Temporal.PlainDateTime.prototype.valueOf()

Lève un objet TypeError, ce qui empêche les instances de Temporal.PlainDateTime d'être implicitement converties en primitives lorsqu'elles sont utilisées dans des opérations arithmétiques ou de comparaison.

Temporal.PlainDateTime.prototype.with()

Retourne un nouvel objet Temporal.PlainDateTime représentant cette valeur de date et d'heure avec certains champs remplacés par de nouvelles valeurs.

Temporal.PlainDateTime.prototype.withCalendar()

Retourne un nouvel objet Temporal.PlainDateTime représentant cette valeur de date et d'heure interprétée dans le nouveau système de calendrier.

Temporal.PlainDateTime.prototype.withPlainTime()

Retourne un nouvel objet Temporal.PlainDateTime représentant cette valeur de date et d'heure avec la partie temps entièrement remplacée par le nouveau temps (sous une forme convertible par Temporal.PlainTime.from()).

Spécifications

Spécification
Temporal
# sec-temporal-plaindatetime-objects

Compatibilité des navigateurs

Voir aussi