Javascript Date issue, incorrect timezone

我怕爱的太早我们不能终老 提交于 2019-12-13 18:46:28

问题


I got this strange JavaScript bug that I can seem to work arround or fix.

I am using some code to make 2 JavaScript dates, to insert events into a calendar component. The dates are built the following way:

var endDate = new Date();
var startDate = new Date();

startDate.setDate(startDateDay);
startDate.setMonth(startDateMonth);
startDate.setFullYear(startDateYear);
startDate.setHours(2, 0, 0, 0);

endDate.setDate(endDateDay);
endDate.setMonth(endDateMonth);
endDate.setFullYear(endDateYear);
endDate.setHours(2, 0, 0, 0);

So, the dates are built using integers. These integers are determined by input, and using the debugger I can see 100% positive they are coming in correctly. Now, ill describe 3 walkthroughs, 2 where it goes correctly and 1 where it goes wrong.


Using the following input:

endDateDay = 20
endDateMonth = 9
endDateYear = 2014

Gives the following date object as result:

Tue Oct 20 2014 02:00:00 GMT+0200 (W. Europe Daylight Time)

Using this input:

endDateDay = 13
endDateMonth = 9
endDateYear = 2014

Gives the following date object as result:

Tue Oct 13 2014 02:00:00 GMT+0200 (W. Europe Daylight Time)

Now, using this input:

endDateDay = 27
endDateMonth = 9
endDateYear = 2014

Gives the following date object as result:

Mon Oct 27 2014 02:00:00 **GMT+0100** (W. Europe Standard Time)

As you can see, for some strange reason the TimeZone is off. This gives errors in my application, and I need to find a way to get it fixed. Though, I cannot find any solution to it, let alone understand why it is actually happening.

PS: I am using Google Chrome


回答1:


The answer was indeed the difference in the daylight savings time, which I completly oversaw. Thanks to finding this out I also found a solution to my problem.

I used this link to further assist me, might it help someone in the future: http://javascript.about.com/library/bldst.htm

Cheers!



来源:https://stackoverflow.com/questions/26256145/javascript-date-issue-incorrect-timezone

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