JavaScript
const milliseconds = Date.now()
const seconds = Math.floor(milliseconds / 1000)
Python
import time
seconds = int(time.time())
milliseconds = time.time_ns() // 1_000_000
Java
long milliseconds = System.currentTimeMillis();
long seconds = java.time.Instant.now().getEpochSecond();
PHP, Go, SQL y Shell
PHP: time()
Go: time.Now().Unix()
PostgreSQL: floor(extract(epoch from now()))
Shell: date +%s
Comprueba la unidad de destino
Verifica si el sistema receptor espera segundos o milisegundos. Una unidad incorrecta es más frecuente que un reloj erróneo y causa una diferencia de mil veces. En sistemas distribuidos, comprueba además la sincronización del host, el intervalo del entero y el formato de serialización.
Comprobar la unidad de cada función
Date.now() en JavaScript devuelve milisegundos. time.time() en Python devuelve segundos con fracción; time.time_ns() devuelve nanosegundos enteros. En Java, Instant separa los segundos completos de un ajuste en nanosegundos. Añadir ceros no aumenta la precisión medida.
Usa 1700000000 segundos o 1700000000000 milisegundos como dato fijo de prueba. Ambos deben producir 2023-11-14T22:13:20Z en el conversor. Un dato fijo permite identificar un error de escala mejor que un reloj que cambia.
Fecha de calendario y duración en JavaScript
const milliseconds = Date.now()
const seconds = Math.floor(milliseconds / 1000)
const isoUtc = new Date(milliseconds).toISOString()
const started = performance.now()
// Ejecuta aquí la operación que quieres medir.
const elapsedMilliseconds = performance.now() - started
Las tres primeras expresiones representan una fecha. Las dos últimas miden una duración con un reloj monotónico y no son timestamps Unix. Una corrección del reloj del sistema puede modificar el tiempo de calendario.
Transportar enteros grandes
No conviertas un valor de nanosegundos de 19 dígitos a Number antes de analizarlo. En JSON, utiliza una cadena decimal si el receptor no conserva enteros grandes. Después puedes convertirla a BigInt. Un número JSON puede perder los últimos dígitos antes de llegar al conversor.
En SQL, comprueba el motor y la zona de la sesión: funciones parecidas pueden aplicar zonas o devolver tipos diferentes. Documenta la unidad del campo y verifica una fecha conocida después de importar datos. Consulta ISO y tiempo Unix para elegir el formato.