Note: This site is currently "Under construction". I'm migrating to a new version of my site building software. Lots of things are in a state of disrepair as a result (for example, footnote links aren't working). It's all part of the process of building in public. Most things should still be readable though.

Get An Epoch Timestamp In JavaScript

Epoch timestamps in JavaScript are the number of milliseconds that have elapsed since midnight on Jan. 1, 1970 UTC. I like using them because they are integers and are the same for any given time regardless of time zone.

They're also handy since they are what's returned from `.now()` and `.getTime()` on a `Date`.

The epoch in millisecond for current time is available with:

Code

const epochTime = Date.now()

Results

1642449085896

Epoch in milliseconds for a specific time are obtained with:

Code

const backToTheFuture = new Date('Oct 21, 2015 07:28:00 GMT+05:00').getTime()

Results

// Outputs:
1445394480000

To pull the epoch based timestamp back into a string do something like:

Code

const backToTheFutureString = new Date(backToTheFuture).toString()

Seconds Only

Some external tools provide epoch timestamps but they only go down to the second instead of the millisecond. If you need to coordinate with one of them, use this for the current time:

Code

const epochTimeUnix = Math.round(Date.now() / 1000)

And this for a specific datetime:

Code

const backToTheFutureUnix = Math.round(new Date('Oct 21, 2015 07:28:00 GMT+05:00').getTime() / 1000)

TODO: Add stuff about `.parse()``