Здравствуйте
Делаю календарь для сохранения цен. При перелистывании далее/назад, спустя 5-6 кликов начинает тормозить скрипт и с каждым кликом всё дольше и дольше думает. Смотрел память, вроде кушает мало. Не могу разобраться в чём косяк
async function calendarInit(year = undefined, month = undefined) {
let today_from_server = new Date(),
parsed_date = [],
html = `<tr>`,
date = new Date();
if(year === undefined || month === undefined) {
today_from_server = await serverDate;
parsed_date = parseDate(today_from_server);
date = new Date(parsed_date[2], parsed_date[1] - 1, 1);
} else {
date = new Date(year, month, 1);
}
current_monthyear.innerText = `${date.getFullYear()} ${months_on_russian[date.getMonth()]}`;
let i = 1;
while(i <= getLastDayOfMonth(date.getFullYear(), date.getMonth())) {
html += `<th>${i}</th>`;
if(i === getLastDayOfMonth(date.getFullYear(), date.getMonth())) {
html += `</tr><tr id="row-with-prices">`;
i = 1;
break;
}
i++;
}
while(date.getDate() <= getLastDayOfMonth(date.getFullYear(), date.getMonth())) {
html += `<td><input type="text" data-date="${date.getDate()}.${date.getMonth() + 1}.${date.getFullYear()}"></td>`;
if(date.getDate() === getLastDayOfMonth(date.getFullYear(), date.getMonth())) {
html += `</tr>`;
break;
}
date.setDate(date.getDate() + 1);
}
prices_table.innerHTML = html;
let prev_month_click = function() {
calendarInit(date.getFullYear(), date.getMonth() - 1);
};
let next_month_click = function() {
calendarInit(date.getFullYear(), date.getMonth() + 1);
};
prev_month.addEventListener('click', prev_month_click);
next_month.addEventListener('click', next_month_click);
}