Date.prototype.getTime()

 
 
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 Date . Questo metodo è funzionalmente equivalente al metodo valueOf().

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 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 Date.now() per prevenire la non necessaria instanziazione di oggetti 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

 Compatibilità Browser

BCD tables only load in the browser

Vedi anche