Vai al contenuto principale
FreeOnlineTools Go
Italiano
Come

Come convertire i timestamp Unix in date leggibili dall'uomo

Di FreeOnlineTools Team · 2026-08-28 aggiornata

Risposta rapida

Timestamp Unix = secondi (o millisecondi) dal 1970-01-01 00:00:00 UTC. Converti in una data con la nuova Date(timestamp * 1000) in JavaScript (secondi) o la nuova Date(timestamp) (millisecondi). Converti una data indietro con Math.floor(date.getTime() / 1000). Utilizza il nostro convertitore di timestamp per eseguire entrambe le operazioni istantaneamente nel tuo browser.

Introduzione

Un timestamp Unix (chiamato anche tempo epoca o tempo POSIX) è il numero di secondi trascorsi dal 1970-01-01 00:00:00 UTC (l'epoca Unix), esclusi i secondi intercalari. È la lingua franca del tempo nell'informatica perché è un singolo numero intero indipendente dal fuso orario e banalmente ordinabile. La maggior parte dei sistemi utilizza i secondi; JavaScript e molti database utilizzano i millisecondi.

Passo dopo passo

  1. Comprendere i secondi e i millisecondi

    La maggior parte dei sistemi backend e APIs utilizzano i secondi (timestamp a 10 cifre fino al 2286). La data di JavaScript e l'utilizzo istantaneo di Java sono in millisecondi (13 cifre). Conferma sempre quale unità si aspetta un API: mescolandole si sposta la data di un fattore 1000 (fuori di ~ 31 anni).

  2. Converti un timestamp in una data leggibile

    Incolla il timestamp nel convertitore timestamp. Rileva secondi vs millisecondi in base alla lunghezza (10 vs 13 cifre) e visualizza la data in UTC e il fuso orario locale. Nel codice: new Date(1700000000 * 1000).toISOString() restituisce '2023-11-14T22:13:20.000Z'.

  3. Converti una data in un timestamp

    Inserisci una data e un'ora nel convertitore; restituisce il timestamp Unix. Nel codice: Math.floor(new Date('2026-08-28T12:00:00Z').getTime() / 1000) restituisce i secondi dell'epoca. Specificare sempre il fuso orario (Z o un offset) per evitare ambiguità rispetto all'ora locale.

  4. Gestisci correttamente i fusi orari

    I timestamp Unix sono sempre UTC: non hanno fuso orario. Converti in una visualizzazione locale solo a livello di presentazione. Non memorizzare mai l'ora locale come timestamp; memorizza UTC e converti sul display. Utilizza i nomi dei fusi orari IANA (America/New_York) con Intl.DateTimeFormat per la corretta gestione dell'ora legale.

  5. Calcolare le differenze tra le date

    Sottrai due timestamp per ottenere la differenza in secondi (o millisecondi). Dividere per 60 per i minuti, 3600 per le ore, 86400 per i giorni. Utilizza il nostro strumento Differenza di data per intervalli a misura d'uomo o il Calcolatore di età per età basate sulla data di nascita.

Esempi

L'epoca di Unix

Ingresso: 0 (seconds)

Produzione: 1970-01-01 00:00:00 UTC

Un miliardo di secondi dopo l'epoca

Ingresso: 1000000000 (seconds)

Produzione: 09-09-2001 01:46:40 UTC

Inizio del 2026 in UTC

Ingresso: 2026-01-01T00:00:00Z

Produzione: 1767225600 (secondi) / 1767225600000 (millisecondi)

Differenza tra due date

Ingresso: 1767225600 - 1700000000

Produzione: 67225600 seconds = 778.08 days ≥2 years 31 days

Problemi comuni

  • Confusione tra secondi e millisecondi: un timestamp di 10 cifre letto come millisecondi fornisce una data nel 1970; un timestamp a 13 cifre letto come secondi supera l'interno a 32 bit. Rileva l'unità in base al conteggio delle cifre o documentala esplicitamente in API.
  • Memorizzazione dell'ora locale come timestamp: i timestamp sono UTC. Se calcoli Date.now() in un browser impostato su UTC-5 e tratti il ​​risultato come locale, le transizioni dell'ora legale sposteranno i tuoi dati di un'ora due volte l'anno.
  • Overflow a 32 bit il 19-01-2038 03:14:07 UTC (Y2038): i sistemi che utilizzano un timestamp di secondi a 32 bit con segno non possono rappresentare date successive a questo punto. Utilizza timestamp a 64 bit o millisecondi nei nuovi sistemi.
  • I secondi intercalari vengono ignorati: i timestamp Unix saltano i secondi intercalari, quindi la differenza tra due timestamp non è uguale al numero di secondi SI trascorsi. La maggior parte delle applicazioni può ignorarlo; l’astronomia e la finanza di alta precisione non possono.

Suggerimenti

  • Memorizza e trasmetti sempre i timestamp in UTC; convertire in ora locale solo a livello di visualizzazione utilizzando Intl.DateTimeFormat con un fuso orario IANA.
  • Utilizza stringhe ISO 8601 (ad esempio 2026-08-28T12:00:00Z) per APIs leggibili dall'uomo e timestamp per l'archiviazione: le stringhe ISO riportano esplicitamente il loro fuso orario e non sono ambigue.
  • Quando confronti i timestamp, utilizza la stessa unità (secondi o millisecondi) su entrambi i lati: una mancata corrispondenza delle unità è uno dei bug di data più comuni.
  • Utilizza il nostro convertitore timestamp per verificare l'integrità delle risposte API durante il debug: mostra sia l'ora UTC che quella locale in modo da poter individuare immediatamente i bug del fuso orario.

Strumenti correlati

Guide correlate

Riferimenti