# General Translation Platform: formatRelativeTime
URL: https://generaltranslation.com/it/docs/platform/core/reference/gt-class-methods/formatting/format-relative-time.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Formatta valori di tempo relativo come minuti fa o giorni da ora. Riferimento API per formatRelativeTime.

Formatta un valore temporale relativo con un&#39;unità esplicita in base alle convenzioni specifiche dell&#39;impostazione regionale, su un&#39;istanza di [GT](/docs/platform/core/reference/gt-class/constructor). General Translation usa l&#39;API integrata `Intl.RelativeTimeFormat` per produrre espressioni come &quot;2 ore fa&quot; o &quot;tra 3 giorni&quot;.

## Panoramica [#overview]

Chiama `formatRelativeTime` su un&#39;istanza di [`GT`](/docs/platform/core/reference/gt-class/constructor) con un valore numerico, un&#39;unità di tempo e un oggetto options facoltativo. Un valore negativo indica il passato, mentre un valore positivo indica il futuro. Restituisce la stringa formattata.

```typescript
const gt = new GT();

const formatted = gt.formatRelativeTime(-1, 'day', {
  locales: 'en-US',
  numeric: 'auto',
});
// "ieri"
```

Firma:

```typescript
formatRelativeTime(
  value: number,
  unit: Intl.RelativeTimeFormatUnit,
  options?: { locales?: string | string[] } & Omit<Intl.RelativeTimeFormatOptions, 'locales'>
): string
```

*Nota: `formatRelativeTime` viene eseguito localmente tramite `Intl.RelativeTimeFormat` e non richiede una chiave API. Per impostazione predefinita, usa l&#39;impostazione regionale di destinazione dell&#39;istanza, quindi usa come fallback l&#39;impostazione regionale sorgente e `en`. Per la formattazione senza un&#39;istanza `GT`, consulta la versione autonoma di [`formatRelativeTime`](/docs/platform/core/reference/utility-functions/formatting/format-relative-time).*

## Come funziona [#how-it-works]

* **Risoluzione delle impostazioni regionali.** Quando `locales` viene omesso, il metodo usa l&#39;impostazione regionale di destinazione dell&#39;istanza, quindi l&#39;impostazione regionale sorgente e `en`.
* **Basato su Intl.** La formattazione è delegata all&#39;API nativa del browser [`Intl.RelativeTimeFormat`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat).
* **Valori predefiniti.** `numeric` è impostato per default su `'auto'` (quindi `-1 day` diventa &quot;ieri&quot; anziché &quot;1 giorno fa&quot;) e `style` su `'long'`.

## Parametri [#parameters]

| Parametro             | Descrizione                                                                     | Type                          | Facoltativo | Predefinito |
| --------------------- | ------------------------------------------------------------------------------- | ----------------------------- | ----------- | ----------- |
| [`value`](#value)     | Il valore temporale relativo (negativo per il passato, positivo per il futuro). | `number`                      | No          | —           |
| [`unit`](#unit)       | L&#39;unità di tempo.                                                           | `Intl.RelativeTimeFormatUnit` | No          | —           |
| [`options`](#options) | Configurazione della formattazione.                                             | `object`                      | Sì          | —           |

### `value` [#value]

**Tipo** `number` · **Obbligatorio**

Il valore temporale relativo. I valori negativi si riferiscono al passato; quelli positivi al futuro.

### `unit` [#unit]

**Type** `Intl.RelativeTimeFormatUnit` · **Required**

L&#39;unità di tempo. Sono accettate le forme singolari e plurali: `'second'`/`'seconds'`, `'minute'`/`'minutes'`, `'hour'`/`'hours'`, `'day'`/`'days'`, `'week'`/`'weeks'`, `'month'`/`'months'`, `'quarter'`/`'quarters'` e `'year'`/`'years'`.

### `options` [#options]

**Type** `{ locales?: string | string[] } & Omit<Intl.RelativeTimeFormatOptions, 'locales'>` · **Facoltativo**

Configurazione della formattazione. La tabella elenca le opzioni comuni esposte dai tipi Core pubblicati e i relativi valori predefiniti effettivi di Core. (Consulta le [opzioni del costruttore `Intl.RelativeTimeFormat`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/RelativeTimeFormat#options) per ulteriori dettagli standard e specifici del runtime).

| Nome            | Descrizione                                                              | Tipo                            | Facoltativo | Predefinito                            |
| --------------- | ------------------------------------------------------------------------ | ------------------------------- | ----------- | -------------------------------------- |
| `locales`       | Impostazioni regionali per la formattazione.                             | `string \| string[]`            | Sì          | `targetLocale` → `sourceLocale` → `en` |
| `numeric`       | Indica se usare sempre un output numerico.                               | `'always' \| 'auto'`            | Sì          | `'auto'`                               |
| `style`         | La lunghezza dell&#39;output.                                            | `'long' \| 'short' \| 'narrow'` | Sì          | `'long'`                               |
| `localeMatcher` | L&#39;algoritmo di corrispondenza delle impostazioni regionali da usare. | `'best fit' \| 'lookup'`        | Sì          | `'best fit'`                           |

Core modifica il valore predefinito upstream di `numeric` da `'always'` a `'auto'`; gli altri valori predefiniti standard provengono da `Intl.RelativeTimeFormat`.

## Restituisce [#returns]

**Tipo** `string`

La stringa formattata del tempo relativo.

## Esempi [#examples]

```typescript
import { GT } from 'generaltranslation';

const gt = new GT();

// Tempo passato
gt.formatRelativeTime(-2, 'hour', { locales: 'en-US' });
// Restituisce: "2 hours ago"

// Tempo futuro
gt.formatRelativeTime(3, 'day', { locales: 'fr-FR' });
// Restituisce: "dans 3 jours"

// Con numeric: 'auto' (predefinito)
gt.formatRelativeTime(-1, 'day', { locales: 'en-US' });
// Restituisce: "yesterday"
```

## Notes [#notes]

* Il valore predefinito è `numeric: 'auto'` e `style: 'long'`.
* Utilizza `Intl.RelativeTimeFormat` internamente.
* Per selezionare automaticamente l&#39;unità a partire da una `Date`, usa [`formatRelativeTimeFromDate`](/docs/platform/core/reference/gt-class-methods/formatting/format-relative-time-from-date).

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
