formatDateTime
Fonction autonome pour formater les dates et heures selon les conventions de la locale
Vue d’ensemble
La fonction autonome formatDateTime formate les dates et heures selon les conventions propres au locale, sans nécessiter d’instance GT.
Elle offre les mêmes fonctionnalités que la méthode de la GT class, mais peut être utilisée de manière indépendante.
import { formatDateTime } from 'generaltranslation';
const formatted = formatDateTime(new Date(), {
locales: 'de-DE',
dateStyle: 'medium',
timeStyle: 'short'
});
// Retourne : "26.09.2025, 17:33"Références
Paramètres
| Nom | Type | Description |
|---|---|---|
date | Date | L’objet Date à formater |
options | DateTimeFormatOptions & { locales?: string | string[] } | Configuration de formatage avec des locales facultatives |
DateTimeFormatOptions
| Nom | Type | Description |
|---|---|---|
locales? | string | string[] | Locales pour le formatage (par défaut : la locale du système) |
dateStyle? | 'full' | 'long' | 'medium' | 'short' | Style global de formatage de la date |
timeStyle? | 'full' | 'long' | 'medium' | 'short' | Style global de formatage de l’heure |
weekday? | 'long' | 'short' | 'narrow' | Représentation du jour de la semaine |
year? | 'numeric' | '2-digit' | Représentation de l’année |
month? | 'numeric' | '2-digit' | 'long' | 'short' | 'narrow' | Représentation du mois |
day? | 'numeric' | '2-digit' | Représentation du jour |
hour? | 'numeric' | '2-digit' | Représentation de l’heure |
minute? | 'numeric' | '2-digit' | Représentation de la minute |
second? | 'numeric' | '2-digit' | Représentation de la seconde |
timeZone? | string | Identifiant de fuseau horaire IANA |
hour12? | boolean | Indique s’il faut utiliser le format 12 heures |
Renvoie
string - La date et l’heure formatées selon les conventions du locale.
Exemple
Utilisation de base
import { formatDateTime } from 'generaltranslation';
// Formatage de base avec une locale explicite
console.log(formatDateTime(date, { locales: 'en-US' }));
// Résultat : "3/14/2024"
// Formatage allemand
console.log(formatDateTime(date, { locales: 'de-DE' }));
// Résultat : "14.3.2024"
// Plusieurs locales de secours
console.log(formatDateTime(date, {
locales: ['ja-JP', 'en-US']
}));
// Résultat : "2024/3/14" (format japonais)Styles de date et d’heure
const date = new Date('2024-03-14T14:30:45Z');
// Style de date complet
console.log(formatDateTime(date, {
locales: 'en-US',
dateStyle: 'full'
}));
// Résultat : "Thursday, March 14, 2024"
// Date longue avec heure courte
console.log(formatDateTime(date, {
locales: 'fr-FR',
dateStyle: 'long',
timeStyle: 'short'
}));
// Résultat : "14 mars 2024 à 07:30"
// Format court pour différentes locales
const locales = ['en-US', 'de-DE', 'ja-JP'];
locales.forEach(locale => {
console.log(`${locale}: ${formatDateTime(date, {
locales: locale,
dateStyle: 'short',
timeStyle: 'short'
})}`);
});
// Résultat :
// en-US: 3/14/24, 7:30 AM
// de-DE: 14.03.24, 07:30
// ja-JP: 2024/03/14 7:30Gestion des fuseaux horaires
const date = new Date('2024-03-14T14:30:45Z');
// Formater pour différents fuseaux horaires
const timeZones = [
'America/New_York',
'Europe/London',
'Asia/Tokyo'
];
timeZones.forEach(timeZone => {
const formatted = formatDateTime(date, {
locales: 'en-US',
timeZone,
dateStyle: 'medium',
timeStyle: 'medium'
});
console.log(`${timeZone}: ${formatted}`);
});
// Le résultat varie selon l'heure d'étéNotes
- Le paramètre
localesest facultatif et, s’il n’est pas fourni, utilise par défaut la locale du système - Utilise le même
Intl.DateTimeFormatsous-jacent que la méthode de la GT class - Les résultats sont mis en cache en interne pour des performances optimales avec des combinaisons répétées locale/options
- Toutes les options standard de
Intl.DateTimeFormatsont prises en charge - Les fuseaux horaires sont correctement gérés lorsqu’ils sont spécifiés
- Les locales ont des formats de date/heure par défaut et des préférences 12 heures vs 24 heures différents
Prochaines étapes
- Consultez la documentation d’
Intl.DateTimeFormatpour plus d’options - Voir
formatNumpour le formatage de nombres autonome - Voir
formatMessagepour le formatage de messages autonome - Voir la méthode
formatDateTimede la GT class pour une utilisation basée sur une instance - Voir
formatRelativeTimepour le formatage du temps relatif
Comment trouvez-vous ce guide ?