tarnfeld
tarnfeld

Reputation: 26556

Javascript: Convert a UTC Date() object to the local timezone

I have a Date() object that contains a UTC date, which I need converted to the users local timezone. Does anybody know how I could do this? :-)

Upvotes: 6

Views: 9255

Answers (4)

Robert Lozyniak
Robert Lozyniak

Reputation: 322

I found this for you: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/UTC

The way you use it is: var x = Date.UTC(yyyy, mangmo, dd, hh, mi, ss, ms); // now x is a timestamp in milliseconds (it's a number, not a Date object) var y = new Date(x); // now y is the Date object you said you wanted Arguments to Date.UTC are as follows:
yyyy is the year (for example, 1984 or 2016)
mangmo is the mangled month (a number from 0 to 11)
dd is the day of the month (this isn't mangled, it's the same as on a wristwatch or wall calendar)
hh is the hour of the day (0 to 23)
mi is minutes, ss is seconds, ms is milliseconds (I don't think I need to explain these)

Upvotes: 0

Mike Gledhill
Mike Gledhill

Reputation: 29161

This is an old thread, but just in case anyone else stumbles across this issue, here's how I got around this problem.

UTC dates from ASP.Net

In my example, I wanted my ASP.Net service to return dates in the user's local timezone, even though the date values were stored in SQL Server in the UTC timezone.

Upvotes: 0

Benbob
Benbob

Reputation: 14244

I'm pretty sure it is done for you automatically.

>>> d = new Date('Fri, 10 Jun 2011 19:49:23 UTC');
Sat Jun 11 2011 07:49:23 GMT+1200 (New Zealand Standard Time)
>>> d.getHours();
7

Upvotes: 2

Radomir Dopieralski
Radomir Dopieralski

Reputation: 2595

I usually create a new Date object and use the Date.setUTC* functions to copy the date information.

Upvotes: 4

Related Questions