formatDateTime
Fonction autonome pour formater les dates et les heures selon les conventions de la locale
Aperçu
La fonction autonome formatDateTime formate les dates et les heures selon les conventions propres à chaque locale, sans nécessiter d’instance de GT.
Elle offre les mêmes fonctionnalités que la méthode de la classe GT, mais peut être utilisée indépendamment.
import { formatDateTime } from 'generaltranslation';
const formatted = formatDateTime(new Date(), {
  locales: 'de-DE',
  dateStyle: 'medium',
  timeStyle: 'short'
});
// Renvoie : "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 mises en forme selon les conventions de la locale.
Exemple
Utilisation de base
import { formatDateTime } from 'generaltranslation';
// Formatage de base avec locale explicite
console.log(formatDateTime(date, { locales: 'en-US' }));
// Sortie : "3/14/2024"
// Formatage allemand
console.log(formatDateTime(date, { locales: 'de-DE' }));
// Sortie : "14.3.2024"
// Plusieurs locales de secours
console.log(formatDateTime(date, { 
  locales: ['ja-JP', 'en-US'] 
}));
// Sortie : "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'
}));
// Sortie : "Thursday, March 14, 2024"
// Date longue avec heure courte
console.log(formatDateTime(date, {
  locales: 'fr-FR',
  dateStyle: 'long',
  timeStyle: 'short'
}));
// Sortie : "14 mars 2024 à 07:30"
// Format court dans plusieurs locales
const locales = ['en-US', 'de-DE', 'ja-JP'];
locales.forEach(locale => {
  console.log(`${locale}: ${formatDateTime(date, {
    locales: locale,
    dateStyle: 'short',
    timeStyle: 'short'
  })}`);
});
// Sortie :
// 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');
// Formatage 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, la locale du système est utilisée par défaut
- Utilise le même Intl.DateTimeFormatsous-jacent que la méthode de la classe GT
- Les résultats sont mis en cache en interne pour de meilleures performances avec des combinaisons locale/optionsrépétées
- 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 différentes locales ont des formats de date/heure par défaut et des préférences 12 h vs 24 h différents
Prochaines étapes
- Consultez la documentation Intl.DateTimeFormatpour davantage d’options
- Voir formatNumpour le formatage de nombres en mode autonome
- Voir formatMessagepour le formatage de messages en mode autonome
- Voir la méthode formatDateTimede la classe GT pour un usage par instance
- Voir formatRelativeTimepour le formatage relatif du temps
Que pensez-vous de ce guide ?

