У меня есть следующая функция: она принимает дату и проверяет, указана ли данная дата в прошлом месяце или нет.
const {
subMonths,
getMonth,
lastDayOfMonth,
startOfMonth,
isWithinInterval
} = require('date-fns')
function isLastMonth(date) {
let lastMonthDateOfGivenDate = subMonths(new Date(date), 1)
let today = Date.now()
let lastMonthDate = subMonths(today, 1);
let firstDayOfLastMonth = startOfMonth(lastMonthDate)
let lastDayOfLastMonth = lastDayOfMonth(lastMonthDate)
if (isWithinInterval(lastMonthDateOfGivenDate, { start: firstDayOfLastMonth, end: lastDayOfLastMonth }))
console.log("true")
else
console.log('false')
}
isLastMonth("2020-03-30T15:24:02.647Z")
Проблема в том, что я не могу проверить даты, которые есть 31 день или 30 дней для февраля.
Есть решение или другой подход к этой проблеме? Спасибо.