performance.now()
El método performance.now()
devuelve un DOMHighResTimeStamp
(en-US), medido en milisegundos, con una precisión de cinco milésimas de segundo (5 microsegundos).
El valor devuelto representa el tiempo transcurrido desde el tiempo de origen (la propiedad PerformanceTiming.navigationStart
(en-US)). En un web worker, el tiempo de origen es el momento en que se crea su contexto de ejecución (ej. hilo o proceso). En una ventana, es el momento en que el usuario navegó (o confirmó la navegación, si la confirmación fue necesaria) al documento actual. Tenga en cuenta los siguientes puntos:
- En los workers dedicados creados desde un contexto
Window
, el valor del worker será inferior aperformance.now()
en la pestaña que generó el worker. Solía ser igual quet0
del contexto principal, pero fue cambiado. - En service workers compartidos, el valor en el worker podría ser superior al del contexto principal debido a que la ventana puede ser creada después de esos workers.
Sintaxis
t = performance.now();
Ejemplo
js
var t0 = performance.now();
hacerAlgo();
var t1 = performance.now();
console.log("La llamada a hacerAlgo tardó " + (t1 - t0) + " milisegundos.");
A diferencia de otros datos de tiempo disponibles en JavaScript (por ejemplo Date.now
(en-US)), las marcas de tiempo devueltas por Performance.now()
no se limitan a resoluciones de un milisegundo. En su lugar, representan tiempos como números en punto flotante con hasta una precisión de microsegundos.
También a diferencia de Date.now()
, los valores devueltos por Performance.now()
siempre se incrementan a un ritmo constante, independientemente del sistema de reloj (que podría estar ajustado manualmente o manipulado por software como NTP). De todos modos, performance.timing.navigationStart + performance.now()
será aproximadamente igual a Date.now()
.
Especificaciones
Specification |
---|
High Resolution Time # dom-performance-now |
Compatibilidad con navegadores
BCD tables only load in the browser
Vea también
- When milliseconds are not enough: performance.now()de HTML5 Rocks.