# generaltranslation: General Translation Core SDK: formatRelativeTimeFromDate URL: https://generaltranslation.com/ru/docs/core/class/methods/formatting/format-relative-time-from-date.mdx --- title: formatRelativeTimeFromDate description: Справка по API для метода formatRelativeTimeFromDate, форматирующего относительное время на основе Date --- ## Обзор Метод `formatRelativeTimeFromDate` форматирует строку с относительным временем на основе `Date`, автоматически выбирая наиболее подходящую единицу измерения. ```typescript const gt = new GT(); const pastDate = new Date(Date.now() - 7200000); // 2 часа назад const formatted = gt.formatRelativeTimeFromDate(pastDate, { locales: 'en-US' }); // Возвращает: "2 hours ago" ``` ## Справка ### Параметры | Имя | Тип | Описание | | ---------- | -------- | ------------------------------------------- | | `date` | `Date` | Дата, форматируемая относительно `baseDate` | | `options?` | `object` | Конфигурация форматирования | ### Параметры | Имя | Тип | Описание | | ---------------- | ------------------------------- | ----------------------------------------------------------------------------------------------- | | `locales?` | `string \| string[]` | Локали, используемые для форматирования. По умолчанию используются локали рендеринга экземпляра | | `baseDate?` | `Date` | Базовая дата для сравнения. По умолчанию — `new Date()` | | `numeric?` | `'always' \| 'auto'` | Всегда ли использовать числовой формат вывода. По умолчанию — `'auto'` | | `style?` | `'long' \| 'short' \| 'narrow'` | Длина вывода. По умолчанию — `'long'` | | `localeMatcher?` | `'best fit' \| 'lookup'` | Алгоритм подбора локали | ### Возвращает `string` — строка относительного времени в отформатированном виде (например, "2 часа назад", "через 3 дня"). *** ## Пример ```typescript copy import { GT } from 'generaltranslation'; const gt = new GT(); const now = new Date(); // Автоматически выбирает "hours" const twoHoursAgo = new Date(now.getTime() - 7200000); gt.formatRelativeTimeFromDate(twoHoursAgo, { locales: 'en-US', baseDate: now }); // Возвращает: "2 hours ago" // Автоматически выбирает "days" const threeDaysLater = new Date(now.getTime() + 259200000); gt.formatRelativeTimeFromDate(threeDaysLater, { locales: 'fr-FR', baseDate: now }); // Возвращает: "dans 3 jours" ``` *** ## Примечания * Автоматически выбирает наиболее подходящую единицу на основе разницы во времени * По умолчанию используются `numeric: 'auto'` и `style: 'long'` * Если `baseDate` не указана, по умолчанию используется `new Date()` ## Следующие шаги * См. [`formatRelativeTime`](/docs/core/class/methods/formatting/format-relative-time) для явного форматирования значения и единицы измерения * См. автономную функцию [`formatRelativeTimeFromDate`](/docs/core/functions/formatting/format-relative-time-from-date), если нужно использовать её без экземпляра GT