# generaltranslation: General Translation Core SDK: formatDateTime URL: https://generaltranslation.com/es/docs/core/functions/formatting/format-date-time.mdx --- title: formatDateTime description: Función independiente para formatear fechas y horas según las convenciones de la configuración regional --- ## Descripción general La función independiente `formatDateTime` formatea fechas y horas según las convenciones específicas de la configuración regional, sin requerir una instancia de GT. Ofrece la misma funcionalidad que el método de la clase GT, pero puede usarse de forma independiente. ```typescript import { formatDateTime } from 'generaltranslation'; const formatted = formatDateTime(new Date(), { locales: 'de-DE', dateStyle: 'medium', timeStyle: 'short' }); // Devuelve: "26.09.2025, 17:33" ``` ## Referencia ### Parámetros | Name | Type | Description | | --------- | ---------------------------------------------------------- | ------------------------------------------------- | | `date` | `Date` | El objeto `Date` que se va a formatear | | `options` | `DateTimeFormatOptions & { locales?: string \| string[] }` | Configuración de formato con `locales` opcionales | ### DateTimeFormatOptions | Nombre | Tipo | Descripción | | ------------ | --------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | | `locales?` | `string \| string[]` | Configuraciones regionales de formato (de forma predeterminada, usa la configuración regional del sistema) | | `dateStyle?` | `'full' \| 'long' \| 'medium' \| 'short'` | Estilo general de formato de fecha | | `timeStyle?` | `'full' \| 'long' \| 'medium' \| 'short'` | Estilo general de formato de hora | | `weekday?` | `'long' \| 'short' \| 'narrow'` | Representación del día de la semana | | `year?` | `'numeric' \| '2-digit'` | Representación del año | | `month?` | `'numeric' \| '2-digit' \| 'long' \| 'short' \| 'narrow'` | Representación del mes | | `day?` | `'numeric' \| '2-digit'` | Representación del día | | `hour?` | `'numeric' \| '2-digit'` | Representación de la hora | | `minute?` | `'numeric' \| '2-digit'` | Representación del minuto | | `second?` | `'numeric' \| '2-digit'` | Representación del segundo | | `timeZone?` | `string` | Identificador de zona horaria de IANA | | `hour12?` | `boolean` | Indica si se usa el formato de 12 horas | ### Devuelve `string` - La fecha y la hora formateadas según las convenciones de la configuración regional. *** ## Ejemplo ### Uso básico ```typescript copy import { formatDateTime } from 'generaltranslation'; // Formato básico con configuración regional explícita console.log(formatDateTime(date, { locales: 'en-US' })); // Salida: "3/14/2024" // Formato alemán console.log(formatDateTime(date, { locales: 'de-DE' })); // Salida: "14.3.2024" // Múltiples configuraciones regionales de respaldo console.log(formatDateTime(date, { locales: ['ja-JP', 'en-US'] })); // Salida: "2024/3/14" (formato japonés) ``` ### Formatos de fecha y hora ```typescript copy const date = new Date('2024-03-14T14:30:45Z'); // Estilo de fecha completo console.log(formatDateTime(date, { locales: 'en-US', dateStyle: 'full' })); // Salida: "Thursday, March 14, 2024" // Fecha larga con hora corta console.log(formatDateTime(date, { locales: 'fr-FR', dateStyle: 'long', timeStyle: 'short' })); // Salida: "14 mars 2024 à 07:30" // Formato corto en distintas configuraciones regionales const locales = ['en-US', 'de-DE', 'ja-JP']; locales.forEach(locale => { console.log(`${locale}: ${formatDateTime(date, { locales: locale, dateStyle: 'short', timeStyle: 'short' })}`); }); // Salida: // en-US: 3/14/24, 7:30 AM // de-DE: 14.03.24, 07:30 // ja-JP: 2024/03/14 7:30 ``` ### Gestión de la zona horaria ```typescript copy const date = new Date('2024-03-14T14:30:45Z'); // Formato para diferentes zonas horarias 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}`); }); // La salida varía según el horario de verano ``` *** ## Notas * El parámetro `locales` es opcional y, si no se proporciona, se usa de forma predeterminada la configuración regional del sistema * Usa el mismo `Intl.DateTimeFormat` subyacente que el método de la clase GT * Los resultados se almacenan internamente en caché para mejorar el rendimiento al repetir combinaciones de configuración regional y opciones * Se admiten todas las opciones estándar de `Intl.DateTimeFormat` * Las zonas horarias se gestionan correctamente cuando se especifican * Las distintas configuraciones regionales tienen diferentes formatos predeterminados de fecha y hora, así como preferencias de 12 o 24 horas ## Próximos pasos * Consulta la documentación de [`Intl.DateTimeFormat`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat) para ver más opciones * Consulta [`formatNum`](/docs/core/functions/formatting/format-num) para formatear números de forma independiente * Consulta [`formatMessage`](/docs/core/functions/formatting/format-message) para formatear mensajes de forma independiente * Consulta el método [`formatDateTime`](/docs/core/class/methods/formatting/format-date-time) de la clase GT para usarlo con instancias