--- title: Date.prototype.getTime() slug: Web/JavaScript/Reference/Global_Objects/Date/getTime translation_of: Web/JavaScript/Reference/Global_Objects/Date/getTime ---
 {{JSRef}}
 
Il metodo getTime() restituisce il numero di millisecondi a partire dalla Unix Epoch.

 

* JavaScript utilizza i millisecondi come unità di misura, mentre lo Unix Time è in secondi.

getTime() utilizza sempre lo UTC per la rappresentazione del  tempo. Ad esempio, un client browser in un fuso orario, getTime() sarà lo stesso come un client browser in qualsiasi altro fuso orario.

Puoi utilizzare questo metodo per aiutare ad assegnare una data ed un orario ad un altro oggetto {{jsxref("Date")}} . Questo metodo è funzionalmente equivalente al metodo {{jsxref("Date.valueof", "valueOf()")}}.

{{EmbedInteractiveExample("pages/js/date-gettime.html")}}

Sintassi

dateObj.getTime()

Valore di Ritorno

Un numero rappresentante i millisecondi trascorsi tra il  1 Gennaio 1970 00:00:00 UTC e la data utilizzata.

Esempi

Utilizzare getTime() per copiare le date

Costruire un oggetto data con lo stesso valore di tempo.

// Poichè il mese è in base zero, birthday sarà January 10, 1995
var birthday = new Date(1994, 12, 10);
var copy = new Date();
copy.setTime(birthday.getTime());

Misurare il tempo di esecuzione

Sottrarre due susseguenti chiamate getTime() su nuovi oggetti {{jsxref("Date")}} generati, dà il lasso di tempo tra queste due chiamate. Ciò può essere usato per calcolare il tempo di esecuzione di alcune operazioni. Vedere anche {{jsxref("Date.now()")}} per prevenire la non necessaria instanziazione di oggetti {{jsxref("Date")}}.

var end, start;

start = new Date();
for (var i = 0; i < 1000; i++) {
  Math.sqrt(i);
}
end = new Date();

console.log('Operation took ' + (end.getTime() - start.getTime()) + ' msec');

Precisione di tempo ridotta

Per offrire protezione contro attacchi di tipo timing e fingerprinting, la precisione di new Date().getTime() potrebbe essere arrotondata a seconda dei settings del browser. In Firefox, la preferenza privacy.reduceTimerPrecision  è abilitata di default e predefinita a 20µs in Firefox 59; in 60 sarà  2ms.

// precisione di tempo ridotta (2ms) in Firefox 60
new Date().getTime();
// 1519211809934
// 1519211810362
// 1519211811670
// ...


// precisione di tempo ridotta con  `privacy.resistFingerprinting` abilitata
new Date().getTime();
// 1519129853500
// 1519129858900
// 1519129864400
// ...

In Firefox, puoi anche abilitare privacy.resistFingerprinting, la precisione sarà 100ms oppure il valore di  privacy.resistFingerprinting.reduceTimerPrecision.microseconds, qualunque sia superiore.

Specificazioni

Specificazione Status Commento
{{SpecName('ES1')}} {{Spec2('ES1')}} Definizione iniziale. Implementata in JavaScript 1.0.
{{SpecName('ES5.1', '#sec-15.9.5.9', 'Date.prototype.getTime')}} {{Spec2('ES5.1')}}  
{{SpecName('ES6', '#sec-date.prototype.gettime', 'Date.prototype.getTime')}} {{Spec2('ES6')}}  
{{SpecName('ESDraft', '#sec-date.prototype.gettime', 'Date.prototype.getTime')}} {{Spec2('ESDraft')}}  

 Compatibilità Browser

{{Compat("javascript.builtins.Date.getTime")}}

Vedi anche