JS Date объект, дающий странные результаты - PullRequest
0 голосов
/ 26 марта 2011

Моя дата в формате 2011-04-01. Когда я запускаю приведенный ниже код, следующие результаты.

var dateParts = '2011-04-01'.split('-');
dateParts[0] = parseInt(dateParts[0]);
dateParts[1] = parseInt(dateParts[1]);
dateParts[2] = parseInt(dateParts[2]);
console.log(dateParts);
for (i = 0; i <= 13; i++) {
  var thisDate = new Date(dateParts[0], dateParts[1], dateParts[2] + i);
  console.log(thisDate);
}

Результат:

[2011, 4, 1]
Date {Sun May 01 2011 00:00:00 GMT-0400 (Eastern Daylight Time)}
Date {Mon May 02 2011 00:00:00 GMT-0400 (Eastern Daylight Time)}
Date {Tue May 03 2011 00:00:00 GMT-0400 (Eastern Daylight Time)}
Date {Wed May 04 2011 00:00:00 GMT-0400 (Eastern Daylight Time)}
Date {Thu May 05 2011 00:00:00 GMT-0400 (Eastern Daylight Time)}
Date {Fri May 06 2011 00:00:00 GMT-0400 (Eastern Daylight Time)}
Date {Sat May 07 2011 00:00:00 GMT-0400 (Eastern Daylight Time)}
Date {Sun May 08 2011 00:00:00 GMT-0400 (Eastern Daylight Time)}
Date {Mon May 09 2011 00:00:00 GMT-0400 (Eastern Daylight Time)}
Date {Tue May 10 2011 00:00:00 GMT-0400 (Eastern Daylight Time)}
Date {Wed May 11 2011 00:00:00 GMT-0400 (Eastern Daylight Time)}
Date {Thu May 12 2011 00:00:00 GMT-0400 (Eastern Daylight Time)}
Date {Fri May 13 2011 00:00:00 GMT-0400 (Eastern Daylight Time)}
Date {Sat May 14 2011 00:00:00 GMT-0400 (Eastern Daylight Time)}

Дата, которую я разделяю, и число, которое я даю объекту Date, даны в апреле, почему он генерирует дату в мае? Я немного новичок в JS, поэтому может быть что-то очевидное, что мне не хватает. Буду признателен за любую помощь или предложения по улучшению.

1 Ответ

2 голосов
/ 26 марта 2011

Некоторые массивы частей JavaScript Date основаны на нуле: например, Дни: 0 => Воскресенье, Месяцы: 0 => Январь

Ссылка: https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Date

Измененный код: http://jsfiddle.net/j4kBE/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...