GT ClassMethodsFormatting

formatDateTime

API Reference für die Methode formatDateTime zur Formatierung von Datums- und Zeitangaben gemäß den Locale-Konventionen

Übersicht

Die Methode formatDateTime formatiert Datums- und Zeitangaben gemäß locale-spezifischen Konventionen mithilfe der Internationalization API. Sie berücksichtigt Datums- und Zeitformate, Kalender sowie Zeitzonen automatisch auf Basis der Ziel‑locale.

const gt = new GT({ targetLocale: 'de-DE' });

const formatted = gt.formatDateTime(new Date(), {
  dateStyle: 'medium',
  timeStyle: 'short'
});
// Gibt zurück: „25.09.2025, 18:06" (deutsches Datums-/Zeitformat)

Referenz

Parameter

NameTypBeschreibung
dateDateDas zu formatierende Date-Objekt
options?DateTimeFormatOptionsOptionale Formatierungseinstellungen

DateTimeFormatOptions

Erweitert Intl.DateTimeFormatOptions um eine zusätzliche Locale-Spezifikation:

NameTypBeschreibung
locales?string | string[]Locales für die Formatierung überschreiben (Standard: Instanz-Locales)
localeMatcher?'lookup' | 'best fit'Algorithmus zur Locale-Ermittlung (Standard: 'best fit')
dateStyle?'full' | 'long' | 'medium' | 'short'Übergreifender Datumsformatstil
timeStyle?'full' | 'long' | 'medium' | 'short'Übergreifender Zeitformatstil
weekday?'long' | 'short' | 'narrow'Darstellung des Wochentags
era?'long' | 'short' | 'narrow'Darstellung der Epoche
year?'numeric' | '2-digit'Darstellung des Jahres
month?'numeric' | '2-digit' | 'long' | 'short' | 'narrow'Darstellung des Monats
day?'numeric' | '2-digit'Darstellung des Tages
dayPeriod?'narrow' | 'short' | 'long'Formatierung der Tageszeit (Morgen, Nachmittag usw.)
hour?'numeric' | '2-digit'Darstellung der Stunde
minute?'numeric' | '2-digit'Darstellung der Minute
second?'numeric' | '2-digit'Darstellung der Sekunde
fractionalSecondDigits?1 | 2 | 3Anzahl der Nachkommastellen der Sekunde
timeZoneName?'long' | 'short' | 'longOffset' | 'shortOffset' | 'longGeneric' | 'shortGeneric'Format des Zeitzonennamens
timeZone?stringIANA-Zeitzonenkennung
hour12?boolean12-Stunden-Format verwenden
hourCycle?'h11' | 'h12' | 'h23' | 'h24'Bevorzugter Stundenzyklus
calendar?stringZu verwendendes Kalendersystem
numberingSystem?stringZahlensystem für Ziffern
formatMatcher?'basic' | 'best fit'Algorithmus zur Formatabstimmung (Standard: 'best fit')

Rückgabewert

string - Das formatierte Datum und die Uhrzeit gemäß den Konventionen der locale.


Beispiele

Grundlagen der Datums- und Zeitformatierung

import { GT } from 'generaltranslation';

const gt = new GT({ targetLocale: 'en-US' });
const date = new Date('2024-03-14T14:30:45Z');

// Grundlegende Datumsformatierung (verwendet Standard-options)
console.log(gt.formatDateTime(date));
// Ausgabe: "3/14/2024"

// Formatierung für deutsches locale
console.log(gt.formatDateTime(date, { locales: 'de-DE' }));
// Ausgabe: "14.3.2024"

// Formatierung für japanisches locale
console.log(gt.formatDateTime(date, { locales: 'ja-JP' }));
// Ausgabe: "2024/3/14"

Datums- und Zeitformate

const date = new Date('2024-03-14T14:30:45Z');

// Vollständiges Datumsformat
console.log(gt.formatDateTime(date, { dateStyle: 'full' }));
// Ausgabe: „Donnerstag, 14. März 2024"

// Langes Datum mit kurzer Zeitangabe
console.log(gt.formatDateTime(date, {
  dateStyle: 'long',
  timeStyle: 'short'
}));
// Ausgabe: „14. März 2024 um 7:30"

// Benutzerdefinierte Datumsbestandteile
console.log(gt.formatDateTime(date, {
  weekday: 'long',
  year: 'numeric',
  month: 'long',
  day: 'numeric'
}));
// Ausgabe: „Donnerstag, 14. März 2024"

Zeitzone und Uhrzeitformat

const date = new Date('2024-03-14T14:30:45Z');

// 12-Stunden-Format erzwingen
console.log(gt.formatDateTime(date, {
  hour: 'numeric',
  minute: '2-digit',
  hour12: true
}));
// Ausgabe: „7:30 AM"

// 24-Stunden-Format erzwingen
console.log(gt.formatDateTime(date, {
  hour: 'numeric',
  minute: '2-digit',
  hour12: false
}));
// Ausgabe: „07:30"

// Bestimmte Zeitzone
console.log(gt.formatDateTime(date, {
  timeZone: 'America/New_York',
  dateStyle: 'medium',
  timeStyle: 'short'
}));
// Ausgabe: „Mar 14, 2024, 10:30 AM"

Hinweise

  • Die Datumsformatierung folgt automatisch den konventionsspezifischen Vorgaben der jeweiligen locale
  • Die Methode verwendet die browsernative Intl.DateTimeFormat für optimale Leistung und Genauigkeit
  • Zeitzonen werden bei entsprechender Angabe korrekt berücksichtigt

Verwandte Methoden

Nächste Schritte

Wie ist diese Anleitung?