У меня очень странная проблема с Javascript. Я пытаюсь пропустить мою дату, чтобы выполнить некоторую проверку и добавить значение к моему массиву, но когда я возвращаю массивы, он показывает все мои коллекции с последним значением. Ниже мой код:Почему все элементы Date в моем массиве совпадают с датой?
function myFunction() {
var todayDate = new Date();
var firstDay = new Date(todayDate.getFullYear(), todayDate.getMonth(), 1);
var lastDay = new Date(todayDate.getFullYear(), todayDate.getMonth() + 1, 0);
var testDates=[];
while (firstDay <= lastDay) {
var currentDate = firstDay;
testDates.push(firstDay);
firstDay.setDate(firstDay.getDate() + 1);
}
document.getElementById("demo").innerHTML = testDates;
}
Это заканчивается с последним значением для всех дат моих:
Пт Янв 01 2016 00: 00: 00, Пт Янв 01 2016 00: 00: 00, пт 1 января 2016 00: 00: 00, пт 1 января 2016 00: 00: 00, пт 1 января 2016 00: 00: 00, Пт янв 01 2016 00:00:00
Почему это происходит ?
Вам нужно создать новые даты, а не обновлять один и тот же объект и нажимать несколько раз. –