Intl.DateTimeFormat : méthode resolvedOptions()
Baseline
Widely available
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis septembre 2017.
La méthode resolvedOptions() des instances de Intl.DateTimeFormat retourne un nouvel objet avec des propriétés reflétant les options calculées lors de l'initialisation de cet objet DateTimeFormat.
Exemple interactif
const region1 = new Intl.DateTimeFormat("zh-CN", { timeZone: "UTC" });
const options1 = region1.resolvedOptions();
console.log(options1.locale);
// Résultat attendu : "zh-CN"
console.log(options1.calendar);
// Résultat attendu : "gregory"
console.log(options1.numberingSystem);
// Résultat attendu : "latn"
Syntaxe
resolvedOptions()
Paramètres
Aucun.
Valeur de retour
Un nouvel objet dont les propriétés reflètent les options calculées lors de l'initialisation de cet objet DateTimeFormat. L'objet possède les propriétés suivantes, dans l'ordre indiqué :
locale-
La balise de langue BCP 47 pour la locale réellement utilisée, déterminée par le processus de négociation de locale. Seules les clés d'extension Unicode
ca,hcetnu, si elles sont demandées, peuvent être incluses dans le résultat. calendar-
La valeur fournie pour cette propriété dans l'argument
options, ou en utilisant la clé d'extension Unicode"ca", avec une valeur par défaut si nécessaire. Il s'agit d'un type de calendrier pris en charge pour cette locale. La valeur par défaut dépend de la locale. numberingSystem-
La valeur fournie pour cette propriété dans l'argument
options, ou en utilisant la clé d'extension Unicode"nu", avec une valeur par défaut si nécessaire. Il s'agit d'un système de numérotation pris en charge pour cette locale. La valeur par défaut dépend de la locale. timeZone-
La valeur fournie pour cette propriété dans l'argument
options, avec une valeur par défaut si nécessaire. Il s'agit d'un nom de fuseau horaire IANA. La valeur par défaut correspond au fuseau horaire par défaut de l'environnement d'exécution.Note : La standardisation de
Temporalexige que les navigateurs utilisent le même identifiant que celui initialement défini, sans le convertir en un autre alias. Voir fuseaux horaires et décalages pour plus d'informations. hourCycleFacultatif-
La valeur fournie pour cette propriété dans l'argument
options, ou en utilisant la clé d'extension Unicode"hc", avec une valeur par défaut si nécessaire. Sihour12a été fourni dansoptions, cela prévaut sur les autres réglages dehourCycle. Cette propriété n'est présente que si les options résolues incluent égalementhouroutimeStyle. Elle vaut soit"h11","h12","h23"ou"h24". La valeur par défaut dépend de la locale, bien que"h24"ne soit jamais une valeur par défaut. hour12Facultatif-
Calculé à partir de
hourCycle. Cette propriété n'est présente que si les options résolues incluent égalementhouroutimeStyle. Elle vauttruesihourCycleest"h11"ou"h12", etfalsesihourCycleest"h23"ou"h24". weekday,era,year,month,day,dayPeriod,hour,minute,second,fractionalSecondDigits,timeZoneNameFacultatif-
Les valeurs résultant de la correspondance de format entre les propriétés correspondantes de l'argument
optionset les combinaisons et représentations disponibles pour la mise en forme des dates et heures dans la locale sélectionnée. Certaines de ces propriétés peuvent ne pas être présentes, ce qui indique que les composants correspondants ne seront pas représentés dans la sortie formatée.weekday,eraetdayPeriodvalent soit"narrow","short"ou"long";year,day,hour,minuteetsecondvalent soit"numeric","2-digit"ou"narrow";monthvaut soit"numeric","2-digit","narrow","short"ou"long";fractionalSecondDigitsvaut soit1,2ou3;timeZoneNamevaut soit"short","long","shortOffset","longOffset","shortGeneric"ou"longGeneric".Si ces propriétés ont été demandées dans
options, le constructeur empêche quedateStyleettimeStylesoient définis, donc le groupe ci-dessous ne sera jamais présent. dateStyle,timeStyleFacultatif-
Les valeurs fournies pour ces propriétés dans l'argument
options. Elles valent soit"full","long","medium","short"ou"none". Certaines de ces propriétés peuvent ne pas être présentes, ce qui indique que les composants correspondants ne seront pas représentés dans la sortie formatée.Si ces propriétés ont été demandées dans
options, le constructeur empêche que des options individuelles de composant date ou heure soient définies, donc le groupe ci-dessus ne sera jamais présent.Note : Bien que
dateStyleettimeStylesoient des raccourcis pour les styles individuels de composant date et heure, les styles exacts (dépendant de la locale) auxquels ils correspondent ne sont pas inclus dans les options résolues. Cela garantit que le résultat deresolvedOptions()peut être passé directement au constructeurIntl.DateTimeFormat()(car un objetoptionscontenant à la foisdateStyleoutimeStyleet des styles individuels de composant date ou heure n'est pas valide).
Exemples
>Utiliser la méthode resolvedOptions()
const germanFakeRegion = new Intl.DateTimeFormat("de-XX", { timeZone: "UTC" });
const usedOptions = germanFakeRegion.resolvedOptions();
usedOptions.locale; // "de" (parce que "de-XX" n'existe pas)
usedOptions.calendar; // "gregory"
usedOptions.numberingSystem; // "latn"
usedOptions.timeZone; // "UTC"
usedOptions.month; // "numeric"
Obtenir le fuseau horaire et les préférences de locale de l'utilisateur·ice
Le constructeur Intl.DateTimeFormat sans aucun argument utilise les paramètres système actuels. Vous pouvez utiliser resolvedOptions() pour obtenir le fuseau horaire actuel de l'utilisateur·ice ainsi que le calendrier et le système de numérotation préférés de la locale :
const systemOptions = new Intl.DateTimeFormat().resolvedOptions();
systemOptions.timeZone; // par exemple, "Europe/Brussels" ou "Asia/Riyadh"
systemOptions.calendar; // par exemple, "gregory" ou "islamic-umalqura"
systemOptions.numberingSystem; // par exemple, "latn" ou "arab"
systemOptions.locale; // par exemple, "nl-BE" ou "ar-SA"
Spécifications
| Specification |
|---|
| ECMAScript® 2026 Internationalization API Specification> # sec-intl.datetimeformat.prototype.resolvedoptions> |
Compatibilité des navigateurs
Voir aussi
- L'objet
Intl.DateTimeFormat