Generador cron d’AWS
Generador cron
Comptador de text
JSON a CSV
CSV a JSON
Conversor de timestamp Unix
Generador d’UUID v4 i v7
JSON a TypeScript
Markdown a PDF
Base 64
Imatges
JSON
Codi QR
Contrasenyes
Unitats
Hash
Colors
Eines PDF
Editor de PDF
Codificador d'URL
Conversor de majúscules i minúscules
Lorem Ipsum
Comprovador de regex
Descodificador JWT
Diferència de text
Optimitzador SVG
Visualitzador EXIF
Extractor de colors
Generador de favicons
Convertidor universal
Convertidor d'hores
Divisor de PDF
Imatges a PDF
PDF a Imatge
Eliminar Fons
Tornar al BlogUTILX / Notes i guies

Unix Timestamp: segons, mil·lisegons i zones horàries sense confusions

Una marca temporal Unix alineada amb UTC i l’hora local

Una marca temporal Unix identifica un instant com una distància respecte de l’època Unix. Els dígits, per si sols, no indiquen si compten segons o mil·lisegons. Una cadena amb data i hora introdueix una altra qüestió: sense Z ni desplaçament explícit, una mateixa hora del rellotge pot correspondre a instants diferents. Una conversió fiable fa visibles aquestes decisions.

Aquesta guia segueix un instant situat mig segon abans de l’època amb el convertidor de marques temporals Unix. L’exemple fix permet comprovar nombres negatius, fraccions de segon, UTC, desplaçaments i visualització local. És útil per revisar registres d’esdeveniments, dades d’una API o camps de caducitat sense confiar només en una data que sembli plausible.

Identifica l’instant, la unitat i la zona de visualització

L’època Unix és 1970-01-01T00:00:00Z. El valor 0 en segons i el valor 0 en mil·lisegons representen el mateix instant. Fora d’aquest origen, la unitat és decisiva: 1000 segons equival a setze minuts i quaranta segons després de l’època, mentre que 1000 mil·lisegons equival a només un segon. L’eina no dedueix la unitat del nombre de dígits.

La sortida ISO en UTC representa l’instant de manera consistent. La visualització local mostra aquest mateix instant amb la zona detectada al navegador i indica quina zona utilitza. Una hora diferent al rellotge no significa que hagi canviat la marca temporal. Primer emmagatzema o compara l’instant; després adapta’n la presentació a les persones que necessiten una lectura regional.

Un cas límit anterior a 1970

Utilitza aquest valor ISO exacte:

1969-12-31T23:59:59.500Z

La conversió a mil·lisegons dona -500. La conversió a segons enters dona -1, perquè l’eina arrodoneix cap a menys infinit. Truncar cap a zero donaria 0 i situaria un instant anterior a l’època just a l’origen. La diferència apareix quan la fracció de segon no es pot conservar en un resultat expressat amb segons enters.

Fes una segona comprovació del desplaçament:

1970-01-01T01:00:00+01:00

Aquest valor produeix 0 segons i 0 mil·lisegons. L’hora escrita és la una, però +01:00 indica que el rellotge està una hora avançat respecte d’UTC. Per tant, representa mitjanit UTC. Cap dels dos exemples necessita conèixer la zona local de la màquina per determinar l’instant que descriu.

Converteix en totes dues direccions

Selecciona la conversió d’ISO a marca temporal, enganxa el primer exemple i tria mil·lisegons. El resultat ha de ser -500. Canvia la unitat a segons i comprova -1. Copia els resultats per separat amb la unitat al costat. Una anotació que conservi només el nombre deixa oberta la possibilitat d’un error posterior.

Enganxa després l’exemple amb +01:00 i comprova el zero en totes dues unitats. Canvia a la conversió de marca temporal a data, introdueix -500 i selecciona explícitament mil·lisegons. El resultat UTC ha de tornar a ser 1969-12-31T23:59:59.500Z. Revisa també la representació local i la zona que l’acompanya.

El botó d’ara captura l’instant del moment en què el prems. No és un rellotge de servidor ni s’actualitza contínuament mentre la pàgina es mostra. Per investigar un problema, anota el valor numèric, la unitat, el resultat ISO UTC i la zona local. No canviïs d’unitat només per aconseguir una data visualment més convincent.

Per què cal un ISO explícit i un arrodoniment definit

L’entrada inversa ha de contenir data i hora completes, amb segons i Z o un desplaçament numèric. 2026-09-17T10:00:00 és ambigu perquè no indica cap relació amb UTC. També es comproven els components del calendari abans de crear la data: 2026-02-30T00:00:00Z es rebutja, sense normalitzar-lo silenciosament a un dia de març.

El format admès utilitza T i Z majúscules, o un desplaçament amb forma ±HH:mm. La fracció opcional té entre un i tres dígits. S’admeten anys de quatre dígits i anys ampliats amb signe i sis dígits. Aquestes regles defineixen l’entrada de l’eina; no són una promesa d’acceptar qualsevol representació temporal existent.

ECMAScript expressa els instants de Date en mil·lisegons respecte de l’època, dins d’un rang finit. L’eina exigeix enters segurs per a les marques numèriques i limita l’entrada a 100 caràcters. El rang màxim és de 8.640.000.000.000.000 mil·lisegons en qualsevol direcció. Els desplaçaments s’apliquen abans de comprovar el rang de l’instant UTC resultant.

L’arrodoniment inferior associa cada instant al segon enter que el conté. Mig segon després de l’època correspon al segon 0; mig segon abans, expressat com -0.5, correspon al segon -1. Això explica el resultat negatiu sense tractar-lo com un error de signe o de zona horària.

Diagnostica les dates que semblen incorrectes

Una data molt propera a 1970 o extremament llunyana sol indicar una unitat equivocada. Consulta el contracte del camp origen abans de multiplicar o dividir per mil. Una mateixa API pot utilitzar segons en una propietat i mil·lisegons en una altra. El nom d’un camp és una pista, però la documentació i una mostra coneguda ofereixen una comprovació millor.

Un error de data pot indicar que falta Z, que el dia no existeix o que la sintaxi no està admesa. Utilitza formes completes com 2026-09-17T10:00:00Z o 2026-09-17T12:00:00+02:00. Una data sola o 17/09/2026 10:00 no determina un instant únic per a aquest convertidor.

Si l’enter és insegur o l’instant queda fora de rang, conserva el text original i consulta qui el produeix. Arrodonir el valor fins que sigui acceptat pot crear un instant diferent. Si només l’hora local sorprèn, inspecciona UTC i la zona indicada abans de modificar la marca temporal. No corregeixis les dades per compensar un problema de presentació.

Aplica les conversions amb criteri

Per revisar caducitats, compara valors amb unitats compatibles i documenta si el límit és inclusiu. Llegir el camp de caducitat d’un testimoni no verifica la signatura ni l’autorització. En registres d’esdeveniments, conserva UTC i el valor original; afegeix la lectura local com a presentació. En bases de dades, escull una precisió que conservi la del productor.

Un desplaçament descriu la relació amb UTC en aquell instant. No defineix totes les regles d’una zona. +02:00 no identifica Europe/Madrid ni permet predir canvis futurs d’horari d’estiu. Per programar una hora civil recurrent, guarda una zona IANA per separat i utilitza un planificador que gestioni les seves regles.

La conversió funciona al navegador sense necessitat de pujar el valor. Tanmateix, una captura d’un registre de producció pot revelar identificadors o dades associades. Substitueix-los per valors sintètics quan preparis exemples i conserva només els camps necessaris per al diagnòstic. La conversió temporal no elimina informació sensible del context que l’envolta.

Límits del convertidor

L’eina converteix enters amb una unitat seleccionada i dates ISO estrictes amb zona explícita. No dedueix unitats, no interpreta formats regionals informals, no modela segons intercalars ni conserva precisió inferior al mil·lisegon. Tampoc obté noms de zones a partir de desplaçaments. La sortida en segons enters descarta la fracció mitjançant arrodoniment inferior, també abans de l’època.

La presentació local depèn de l’entorn del navegador i de la seva base de dades horària. És una ajuda de lectura, no una prova independent de totes les regles històriques. Convertir tampoc demostra que una marca sigui autèntica, recent, signada o que correspongui al camp que cal comparar. Aquestes propietats pertanyen al protocol origen.

Comprovacions finals de les marques temporals

Identifica el camp i la unitat documentada. Conserva el text original. Prova 0, una mostra coneguda del sistema i un instant negatiu si és rellevant. Exigeix dates de calendari reals amb Z o desplaçament. Revisa primer UTC, després la lectura local, i anota la zona detectada.

Per als exemples, comprova -500 mil·lisegons i -1 segons per a 1969-12-31T23:59:59.500Z, zero per a 1970-01-01T01:00:00+01:00 i rebuig de 2026-02-30T00:00:00Z. Copia sempre les unitats juntament amb els nombres. Quan comparteixis una incidència, inclou entrada, configuració i resultat esperat perquè una altra persona pugui reproduir-la sense endevinar la zona del teu ordinador.

Fonts: ECMAScript: objectes Date, ECMAScript: format de data i hora i RFC 3339: dates i hores a Internet.