const mondaySunday = (d) => d.getDay() || 7; // чтоб воскресенье не 0, а 7
const getShortWeek = (d, last = false) => {
const D = new Date(d.getTime()); // копия, чтобы ориг. дату не сбить
D.setDate(1); // 1-й день месяца
if (! last) return 7 - mondaySunday(D);
D.setMonth(D.getMonth() + 1); // добавить месяц
D.setDate(D.getDate() - 1); // отнять день
return mondaySunday(D);
}
const leastDays = (d) => Math.min(getShortWeek(d), getShortWeek(d, true));
leastDays(new Date(2021, 10, 10)) // 2
document.querySelector('#filter-input').addEventListener('input', e => {
const val = e.target.value.toLowerCase();
container.querySelectorAll('.title').forEach(n => {
n.closest('.card').style.display = n.innerText.includes(val)
? 'block'
: 'none';
});
});