Hvordan får du et tidsstempel i JavaScript?
Hvordan kan jeg få et tidsstempel i JavaScript?
Noe som ligner på Unix timestamp, det vil si et enkelt tall som representerer gjeldende tid og dato. Enten som et tall eller en streng.
3826
3
Kort og elegant:
En unær operator som
plus
utløservalueOf
-metoden iDate
-objektet og returnerer tidsstempelet (uten noen endring).Detaljer:
På nesten alle aktuelle nettlesere kan du bruke
Date.now()
for å få UTC-tidsstempelet i millisekunder; et viktig unntak fra dette er IE8 og tidligere (se kompatibilitetstabell).Du kan imidlertid enkelt lage et mellomlegg for dette:
For å få tidsstempelet i sekunder, kan du bruke:
Eller alternativt kan du bruke:
som burde være litt raskere, men også mindre lesbar (se også dette svaret).
Jeg vil anbefale å bruke
Date.now()
(med kompatibilitets mellomlegg). Det er litt bedre fordi det er kortere og ikke oppretter et nyttDate
-objekt. Men hvis du ikke vil ha et mellomlegg og maksimal kompatibilitet, kan du bruke den "gamle" metoden for å få tidsstempelet i millisekunder :Som du deretter kan konvertere til sekunder som dette:
Og du kan også bruke
valueOf
-metoden som vi viste ovenfor:Tidsstempel i millisekunder