# 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 --- ## Resumen La función independiente `formatDateTime` da formato a fechas y horas según las convenciones específicas de la configuración regional, sin requerir una instancia de GT. Proporciona 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 | Nombre | Tipo | Descripción | | --------- | ---------------------------------------------------------- | ------------------------------------------------- | | `date` | `Date` | El objeto de fecha al que se le dará formato | | `options` | `DateTimeFormatOptions & { locales?: string \| string[] }` | Configuración de formato con `locales` opcionales | ### DateTimeFormatOptions | Nombre | Tipo | Descripción | | ------------ | --------------------------------------------------------- | ------------------------------------------------------------------------------------------------ | | `locales?` | `string \| string[]` | locales para dar formato (de forma predeterminada, se 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 con el formato correspondiente 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 alternativas de configuración regional console.log(formatDateTime(date, { locales: ['ja-JP', 'en-US'] })); // Salida: "2024/3/14" (formato japonés) ``` ### Estilos 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 zonas horarias ```typescript copy const date = new Date('2024-03-14T14:30:45Z'); // Dar 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 en caché internamente para mejorar el rendimiento cuando se repiten combinaciones de configuración regional y opciones * Todas las opciones estándar de `Intl.DateTimeFormat` son compatibles * Las zonas horarias se manejan correctamente cuando se especifican * Los diferentes locales tienen formatos predeterminados de fecha y hora distintos, así como preferencias de 12 o 24 horas ## Siguientes pasos * consultar la documentación de [`Intl.DateTimeFormat`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat) para conocer más opciones * Consultar [`formatNum`](/docs/core/functions/formatting/format-num) para aplicar formato de número de forma independiente * Consultar [`formatMessage`](/docs/core/functions/formatting/format-message) para aplicar formato de mensaje de forma independiente * Consultar el método [`formatDateTime`](/docs/core/class/methods/formatting/format-date-time) de la clase GT para usarlo en instancias