Эта функция генерирует список месяцев и лет, как в приведенном вами примере. Обратите внимание, что входные данные ожидают строку формата MONTH FULLYEAR
, и любой другой формат строк, скорее всего, даст неправильные результаты. Сказав, что я бы предложил передать Date
объект или метку времени, если это возможно
function generateMonthsAndYears(startingFromDateString) {
const cur = new Date(`15 ${startingFromDateString}`)
const untilDateString = new Date(new Date().getFullYear(), new Date().getMonth()+1, 15).toDateString();
const result = [];
for(; untilDateString !== cur.toDateString(); cur.setMonth(cur.getMonth()+1))
result.push(cur.toLocaleString('en-us', { month: 'long', year: 'numeric' }))
return result;
}
console.log(generateMonthsAndYears("December 2018"))