Newbie
Newbie

Reputation: 2825

how to convert a string to a Unix timestamp in javascript?

I want to convert a string "2013-09-05 15:34:00" into a Unix timestamp in javascript. Can any one tell how to do that? thanks.

Upvotes: 47

Views: 106630

Answers (5)

Jordan Bice
Jordan Bice

Reputation: 51

I would go with date parse myself since it is the native solution. MDN documentation.

const datetimeString = '04 Dec 1995 00:12:00 GMT';
const unixTimestamp = Date.parse(datetimeString);
// unixTimestamp = 818035920000

Upvotes: 5

Mahus
Mahus

Reputation: 607

For this you should check out the moment.s-library

Using that you could write something like:

newUnixTimeStamp = moment('2013-09-05 15:34:00', 'YYYY-MM-DD HH:mm:ss').unix();

Upvotes: 5

Mousius
Mousius

Reputation: 1115

You can initialise a Date object and call getTime() to get it in unix form. It comes out in milliseconds so you'll need to divide by 1000 to get it in seconds.

(new Date("2013/09/05 15:34:00").getTime()/1000)

It may have decimal bits so wrapping it in Math.round would clean that.

Math.round(new Date("2013/09/05 15:34:00").getTime()/1000)

Upvotes: 86

cumanacr
cumanacr

Reputation: 308

DaMouse404 answer works, but instead of using dashes, you will use slashes:

You can initialise a Date object and call getTime() to get it in unix form. It comes out in milliseconds so you'll need to divide by 1000 to get it in seconds.

(new Date("2013/09/05 15:34:00").getTime()/1000)

It may have decimal bits so wrapping it in Math.round would clean that.

Math.round(new Date("2013/09/05 15:34:00").getTime()/1000)

Upvotes: 7

Mohsen
Mohsen

Reputation: 269

try

(new Date("2013-09-05 15:34:00")).getTime() / 1000

Upvotes: 12

Related Questions