2014-10-08 3 views
1

У меня есть эта странная ошибка JavaScript, которая может показаться работающей или исправленной.Javascript Дата выпуска, неправильный часовой пояс

Я использую код для создания двух дат JavaScript, чтобы вставлять события в компонент календаря. Даты построены следующим образом:

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); 

Итак, даты построены с использованием целых чисел. Эти целые числа определяются путем ввода, и с помощью отладчика я вижу, что на 100% позитивно они поступают правильно. Теперь, плохо описать 3 пошагового руководства, 2, где он идет правильно и 1, где он идет не так.


Используя следующий вход:

endDateDay = 20 
endDateMonth = 9 
endDateYear = 2014 

дает следующий объект даты, как результат:

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

Используя этот вход:

endDateDay = 13 
endDateMonth = 9 
endDateYear = 2014 

дает следующий объект даты, как результат:

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

Теперь, используя этот вход:

endDateDay = 27 
endDateMonth = 9 
endDateYear = 2014 

дает следующий объект даты, как результат:

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

Как вам может видеть, по какой-то странной причине TimeZone выключен. Это дает ошибки в моем приложении, и мне нужно найти способ его исправления. Хотя, я не могу найти никакого решения, не говоря уже о том, почему это происходит на самом деле.

PS: Я использую Google Chrome

+1

В каком виде это? Часы в Западной Европе возвращаются к стандартному времени 26 октября ... что вы ожидали и почему? –

+0

Посмотрите на тимзоны, один - ** Дневной свет **, другой - ** Стандартный ** время (хотя имена часовых поясов могут отличаться от того, к чему вы привыкли). – RobG

ответ

2

Ответ был действительно разница в летнее время, которое я курировал укомплектовать. Благодаря выяснению этого я также нашел решение моей проблемы.

Я использовал эту ссылку, чтобы в дальнейшем помочь мне, возможно, это поможет кому-то в будущем: http://javascript.about.com/library/bldst.htm

Ура!

Смежные вопросы