@Alex_87

Как вывести в массив диапазон дат?

Всем привет! Как в массив записать диапозон дат, имея начальную дату и конечную.
Пример
Начальная, это сегодняшний день: - 22.02.2022
Конечная: - которую тоже получаем - (к примеру 22.05.2022)
В массиве должно получится
22.02.2022, 22.03.2022, 22.04.2022, 22.05.2022,

Мой код следующий(он не работает)

let out = document.querySelector('.out');
let startofDate = Date.parse(Number(todayDate)); // String 22.02.2022
  let endofDate = Date.parse(Number(endDate)); // String 22.05.2022
  for (let i=startofDate; i < endofDate; i=i+24*60*60*1000){
    out.innerHTML += (new Date(i).toISOString().substr(0, 10) + '<br>');
}
  • Вопрос задан
  • 170 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
function getDates(startStr, endStr) {
  const startDate = new Date(startStr.split('.').reverse().join('-'));
  const endDate = new Date(endStr.split('.').reverse().join('-'));
  const dates = [];

  for (; startDate <= endDate; startDate.setDate(startDate.getDate() + 1)) {
    dates.push(startDate.toLocaleDateString('ru-RU', {
      year: 'numeric',
      month: '2-digit',
      day: '2-digit',
    }));
  }

  return dates;
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы