Come ottenere un timestamp in JavaScript

di Lorenzo Neri
0 commento 84 visualizzazioni

Si può ottenere un timestamp in JavaScript come avviene nei sistemi Unix? Si può, scopriamo come in questo articolo.

In JavaScript esiste la classe Date che permette di generare timestamp.

Come si fa?

Banalmente creando un oggetto:

var tempo = + new Date();

Avrai notato che sto usando l’operatore “+” e giustamente ti stai chiedendo come mai.

Andiamo più a fondo nella faccenda. Se io creassi un oggetto della classe “Date” in questo modo:

var tempo = new Date();

Succede una cosa diversa.

Nel primo caso, ottengo un timestamp relativo al momento esatto in cui l’ho generato.

Nel secondo caso, ottengo data e ora relative al momento esatto in cui le ho generate.

Due cose ben diverse, ma che derivano dallo stesso calcolo.

Quindi, se ti stessi chiedendo davvero come generare un timestamp in JavaScript la risposta sta nel primo metodo.

Ma in verità, esistono altre variazioni.

Dettagli sulla generazione di timestamp in JavaScript

Un altro modo è utilizzare il metodo “now” della classe “Date”:

var tempo = Date.now();

Quello che fa questo metodo è restituire il timestamp UTC in millisecondi. Quindi ce l’hai non solo in un formato più pratico, ma anche basato sul fuso orario!

Ora che abbiamo capito come ottenere un timestamp in JavaScript, specialmente con l’ultimo metodo che abbiamo visto assieme, vediamo come gestirlo.

Per esempio, può capitare che tu voglia convertire in secondi il timestamp ottenuto tramite il metodo “now”.

Per farlo, devi agire tramite la libreria “Math”:

Math.round(Date.now() / 1000)

Questo, per eliminare la parte decimale che non serve.

Ma non finiamo qui.

C’è un metodo alternativo:

var tempo = new Date.getTime()

È un metodo più “antico” che fa pressoché la stessa identica cosa del precedente.

Ho ritenuto giusto inserirlo in questo articolo per completezza di informazioni, ma c’è da considerare una cosa importante!

Ci hai fatto caso che con “now” non devi creare un nuovo oggetto, mentre con “getTime” è necessario?

A te le conclusioni 🙂

Potrebbero interessarti

Lascia un commento

Questo sito potrebbe fare uso di cookie e siccome l'UE mi obbliga a fartelo presente, eccoti il classico banner dove puoi decidere come gestirli. Accetta Leggi di più