javascript - node - obtener hora actual typescript
¿Hay alguna forma de obtener la hora actual en nanosegundos utilizando JavaScript? (6)
Entonces, sé que puedo obtener la hora actual en milisegundos usando JavaScript. Pero, ¿es posible obtener la hora actual en nanosegundos?
¡Sí! Prueba el excelente nano-time del sazze
let now = require(''nano-time'');
now(); // ''1476742925219947761'' (returns as string due to JS limitation)
Basándose en la respuesta de Jeffery, para obtener un sello de tiempo absoluto (como el OP quería) el código sería:
var TS = window.performance.timing.navigationStart + window.performance.now();
el resultado es en unidades de milisegundos, pero es un valor en coma flotante según se informa "con precisión de una milésima de milisegundo ".
En entornos de servidor como Node.js puede usar la siguiente función para obtener tiempo en nanosegundos
function getNanoSecTime() {
var hrTime = process.hrtime();
return hrTime[0] * 1000000000 + hrTime[1];
}
También obtenga micro segundos de una manera similar también:
function getMicSecTime() {
var hrTime = process.hrtime();
return hrTime[0] * 1000000 + parseInt(hrTime[1] / 1000);
}
JavaScript registra el tiempo en milisegundos, por lo que no podrá obtener tiempo para esa precisión. La respuesta smart-aleck es "multiplicar por 1,000,000".
Logra precisión de microsegundos en la mayoría de los navegadores usando:
window.performance.now()
Ver también:
No. No existe la posibilidad de obtener precisión de nanosegundos en la capa de JavaScript.
Si intenta comparar una operación muy rápida, póngala en un bucle que la ejecute unas mil veces.