Hvordan får man et tidsstempel i JavaScript?
Hvordan kan jeg få et tidsstempel i JavaScript?
Noget i stil med Unix timestamp, dvs. et enkelt tal, der repræsenterer det aktuelle tidspunkt og den aktuelle dato. Enten som et tal eller som en streng.
3826
3
Kort & smart:
En unær operatør som
plus
udløservalueOf
-metoden iDate
-objektet, og den returnerer tidsstemplet (uden nogen ændring).Detaljer:
På næsten alle nuværende browsere kan du bruge
Date.now()
til at få UTC-tidsstemplet i millisekunder; en bemærkelsesværdig undtagelse er IE8 og tidligere (se kompatibilitetstabel).Du kan dog nemt lave en shim til dette:
For at få tidsstemplet i sekunder, kan du bruge:
Eller alternativt kan du bruge:
Hvilket skulle være lidt hurtigere, men også mindre læsbart (se også se dette svar).
Jeg vil anbefale at bruge
Date.now()
(med kompatibilitets-shim). Det'er lidt bedre, fordi det'er kortere & doesn't create a newDate
object. Men hvis du ikke ønsker en shim & maksimal kompatibilitet, kan du bruge "old" metoden til at få tidsstemplet i millisekunder:Som du derefter kan konvertere til sekunder som dette:
Og du kan også bruge
valueOf
-metoden, som vi viste ovenfor:Timestamp i millisekunder