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

我的未来我决定 提交于 2019-12-01 16:46:29

问题


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? :-)


回答1:


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




回答2:


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



回答3:


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.




回答4:


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)



来源:https://stackoverflow.com/questions/3741348/javascript-convert-a-utc-date-object-to-the-local-timezone

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!