Tech Help
Van Unix Timestamp na datum: sekondes, millisekondes en UTC verduidelik
Skakel ’n Unix timestamp om na ’n datum. Sien sekondes teenoor millisekondes, UTC teenoor plaaslike tyd, ISO 8601, en hoe om ’n datum terug na epoch-tyd te skakel.
’n Unix timestamp stel tyd voor relatief tot die Unix epoch: 1970-01-01 00:00:00 UTC. Dit word gewoonlik gestoor as sekondes sedert die epoch of as millisekondes sedert die epoch.
Om reg om te skakel, moet jy eers weet watter eenheid jy het. 1720000000 sekondes is 2024-07-03 09:46:40 UTC. 1720000000000 millisekondes is dieselfde oomblik.
Die timestamp identifiseer ’n oomblik. UTC, plaaslike tyd of ’n IANA-sone verander net hoe daardie oomblik vertoon word.
Dit is ’n omskakelingsgids: timestamp na datum, datum na timestamp, UTC teenoor plaaslik, en ISO 8601. As ’n waarde onverwags ’n 1970-datum word, is dit gewoonlik ’n sekondes/millisekondes-mismat—sien Unix Timestamp in sekondes vs millisekondes: hoekom die datum 1970 wys.
Wat is ’n Unix Timestamp?
Unix timestamp, Unix time en epoch time beteken gewoonlik verstreke tyd sedert 1970-01-01 00:00:00 UTC. Die getal is nie ’n geformateerde datumstring met ’n tydsone-etiket nie. Dieselfde oomblik kan as verskillende horlosietye vertoon in UTC, New York, Tokio of Seoel. Unix timestamps is nie altyd sekondes nie—millisekondes is algemeen in die praktyk.
Wat is die Unix Epoch?
Die Unix epoch is 1970-01-01 00:00:00 UTC. Timestamp 0 is daardie oomblik. ’n Positiewe timestamp is ná die epoch. Sommige stelsels laat ’n negatiewe timestamp toe vir ’n tyd voor die epoch, maar taal- en datumreeks-ondersteuning verskil.
Is my timestamp in sekondes of millisekondes?
1720000000 is sekondes; 1720000000000 is millisekondes; dit is dieselfde oomblik. ’n Praktiese leidraad: omtrent 10 syfers beteken dikwels sekondes, omtrent 13 dikwels millisekondes. Syfertelling is slegs ’n heuristiek. Verlede of toekomstige datums, ander eenhede of ’n pasgemaakte epoch kan anders lyk. Datum- en tydomskakelaar kan omskakel met sekondes, millisekondes of outo (≤10 syfers as sekondes, ≥13 as millisekondes)—kies die eenheid as jy dit ken.
Hoekom lewer die verkeerde eenheid die verkeerde datum?
JavaScript Date verwag millisekondes. As jy 1720000000 as millisekondes deurgee, kry jy 1970-01-20 21:46:40 UTC. Millisekondes as sekondes behandel, of andersom, land op ’n heel ander datum. Vir die 1970-foutspoorpad, sien Unix Timestamp in sekondes vs millisekondes: hoekom die datum 1970 wys.
new Date(1720000000);
// 1970-01-20T21:46:40.000Z
Hoe om ’n Unix timestamp in sekondes om te skakel
Vermenigvuldig sekondes met 1000 om millisekondes te kry. JavaScript Date is millisekonde-gebaseer, dus gebruik new Date(timestamp * 1000).
const timestamp = 1720000000;
const date = new Date(timestamp * 1000);
date.toISOString();
// 2024-07-03T09:46:40.000Z
Hoe om ’n millisekonde-timestamp om te skakel
Gee millisekondes direk aan Date. Moenie ’n millisekonde-timestamp weer met 1000 vermenigvuldig nie.
const timestamp = 1720000000000;
const date = new Date(timestamp);
date.toISOString();
// 2024-07-03T09:46:40.000Z
Hoekom wys dieselfde timestamp ’n ander tyd?
’n Unix timestamp is een oomblik. Om dit in UTC, plaaslike tyd of ’n gekose IANA-sone te wys, verander die horlosiegesig. Vir 1720000000000 is UTC 2024-07-03 09:46:40. America/New_York op daardie datum is 2024-07-03 05:46:40 (EDT). Asia/Seoul is 2024-07-03 18:46:40 (UTC+9). Daardie New York- en Seoel-waardes kom van Intl, nie van ’n vaste-verskuiwing-leuse nie.
Bevat ’n Unix timestamp ’n tydsone?
Nee. Dit stoor nie America/New_York of Asia/Seoul nie. Die timestamp identifiseer ’n oomblik. ’n Tydsone word toegepas wanneer jy daardie oomblik as ’n leesbare datum en tyd formateer. Die epoch word relatief tot UTC gedefinieer; die getal self is nie «’n UTC-tydsoneveld» nie.
Unix Timestamp teenoor ISO 8601
1720000000 en 2024-07-03T09:46:40Z kan dieselfde oomblik voorstel. Unix is ’n numeriese verstreke-tyd-waarde. ISO 8601 is ’n leesbare datum-tyd-string en kan met Z (UTC) of ’n numeriese verskuiwing eindig. Z beteken UTC; dit word soms Zulu genoem. Dit is nie dieselfde formaat nie.
Hoe kry jy die huidige Unix timestamp?
In JavaScript is Date.now() millisekondes. Math.floor(Date.now() / 1000) is sekondes. Moenie «nou» in ’n artikel vaspen nie; dit beweeg.
Date.now();
Math.floor(Date.now() / 1000);
Kan jy ’n datum terug na ’n Unix timestamp skakel?
Ja. Van ’n eksplisiete UTC ISO-string gee getTime() millisekondes; deel deur 1000 en rond af vir sekondes.
const date = new Date("2024-07-03T09:46:40Z");
date.getTime();
// 1720000000000
Math.floor(date.getTime() / 1000);
// 1720000000
Wees versigtig met dubbelsinnige datumformate
03/07/2024 kan 7 Maart of 3 Julie beteken, na gelang van streek. Verkies ’n ISO-styl datum en tyd met ’n tydsone of verskuiwing. Datum- en tydomskakelaar verwerp dubbelsinnige numeriese datums soos 01/02/2026 en vra ’n datumkieser of ’n ISO-styl waarde.
Wat van somertyd?
’n Unix timestamp stoor nie ’n DST-vlag nie. Plaaslike vertoon pas die sone se reëls toe. America/New_York gebruik verskillende verskuiwings in winter en somer, dus is «New York is UTC-5» nie altyd waar nie.
Sluit Unix timestamps skrikkelsekondes in?
Tipiese POSIX/Unix-tyd tel nie skrikkelsekondes as ekstra SI-sekondes op ’n deurlopende skaal nie. Platforms kan verskil. Vir alledaagse omskakeling kan jy hierdie detail ignoreer.
Algemene Unix timestamp-omskakelingsfoute
Hierdie verwarrings lewer die verkeerde datum of die verkeerde horlosiegesig:
Sekondes as millisekondes behandel
’n Moderne sekondewaarde land dan naby 1970 in JavaScript Date.
Millisekondes as sekondes behandel
Die datum spring ver in die toekoms.
10 of 13 syfers as ’n wet behandel
Syfertelling is ’n leidraad, nie ’n waarborg nie.
UTC met plaaslike tyd verwar
Die oomblik is dieselfde; die vertoonde horlosie kan verskil.
Aannemend dat ’n tydsone in die getal sit
IANA-name word by vertoontyd toegepas, nie in die timestamp gestoor nie.
Dubbelsinnige datums, DST-leuses of ekstra ×1000
Gebruik ISO-styl invoer. Moenie ’n millisekonde-timestamp weer vermenigvuldig nie.
Geverifieerde UTC-voorbeelde
Hierdie UTC-horlosietye is bereken, nie geraai nie:
| Invoer | Eenheid | UTC |
|---|---|---|
| 0 | sekondes | 1970-01-01 00:00:00 |
| 1720000000 | sekondes | 2024-07-03 09:46:40 |
| 1720000000000 | millisekondes | 2024-07-03 09:46:40 |
| 1720000000 | millisekondes | 1970-01-20 21:46:40 |
’n Eenvoudige omskakelingsbesluitgids
As die bron die eenheid noem, gebruik dit. Anders is syfertelling ’n leidraad—kontroleer dan dat die datum sin maak. Skakel sekondes na millisekondes wanneer die API ms nodig het. Kies UTC, plaaslik of ’n IANA-sone vir vertoon. ISO 8601 is nuttig vir berging en uitruil.
- Jy het ’n Unix timestamp
- Eenheid aangedui? Gebruik dit; anders kyk na grootte
- Sekondes? ×1000 as die API millisekondes nodig het
- Millisekondes? Gebruik direk in ’n ms-gebaseerde API
- Wys as UTC, plaaslik of ’n IANA-sone
- Het jy ’n string nodig? ISO 8601 kan pas
Die timestamp identifiseer ’n punt in die tyd. UTC, plaaslike tyd of ’n tydsone besluit net hoe daardie oomblik aan ’n persoon gewys word.
Skakel Unix timestamps in jou blaaier om
NEXNARA Datum- en tydomskakelaar skakel Unix-sekondes en -millisekondes om, wys UTC, plaaslike tyd en ISO 8601, en skakel tussen IANA-tydsones om.
Unix-modus ondersteun sekondes, millisekondes, outo-eenheid, huidige tyd en datum-na-timestamp. Tydsone-modus soek IANA-name, gebruik die blaaier-sone en pas DST-bewuste Intl-verskuiwings toe. Formaatmodus het streekleesbare uitvoer, 12/24-uur-vertoon en ’n wag teen dubbelsinnige datums. Datumverskil is ’n aparte modus.
Omskakeling gebruik die blaaier se Date- en Intl-API’s. Waardes buite wat Date kan voorstel, word verwerp. Outo-eenheid raai nie 11–12-syferwaardes nie; kies sekondes of millisekondes.
Datum- en timestamp-omskakeling self gebeur in jou blaaier. Invoere word nie na ’n NEXNARA-bediener gestuur vir omskakeling nie. Advertensies en ander werfkenmerke gebruik steeds die netwerk.
Plak ’n timestamp in Datum- en tydomskakelaar en vergelyk UTC, plaaslike tyd en ISO 8601 voordat jy ’n eenheid kies.
FAQ
Hoe skakel ek ’n Unix timestamp om na ’n datum?
Ken die eenheid. Vir sekondes in JavaScript, gebruik new Date(n * 1000). Vir millisekondes, gebruik new Date(n). Formateer dan as UTC, plaaslik of ’n sone.
Is Unix timestamp in sekondes of millisekondes?
Enigeen. Omtrent 10 syfers beteken dikwels sekondes en omtrent 13 dikwels millisekondes, maar dit is ’n heuristiek, nie ’n reël nie.
Hoekom wys my timestamp 1970?
Gewoonlik is ’n sekondewaarde as millisekondes gelees. Sien Unix Timestamp in sekondes vs millisekondes: hoekom die datum 1970 wys.
Is Unix timestamp altyd UTC?
Die epoch word relatief tot UTC gedefinieer, en die getal identifiseer ’n oomblik. Vertoontydsone is apart. Dit is nie ’n gestoorde «UTC-tydsoneveld» nie.
Bevat ’n Unix timestamp ’n tydsone?
Nee. Dit dra nie ’n IANA-identifiseerder nie. Tydsone word toegepas wanneer jy die oomblik formateer.
Hoe skakel ek ’n datum om na Unix timestamp?
Van ’n UTC ISO-string is date.getTime() millisekondes; Math.floor(date.getTime() / 1000) is sekondes.