Как проверить дату на существование?

под существованием имеется ввиду не 10.52.2022

(формат 10.06.2022 приходит с инпута) и чтобы она была не больше, чем сегодня


Ответы (1 шт):

Автор решения: De.Minov

Date вернёт null если дата неверная, а ещё сверяем timestamp текущей даты с переданной, если переданная дата не будет null и меньше текущей, то функция вернёт true.

function CheckDate(str) {
  str = str.split('.').reverse();
  let cur = new Date();
  let date = new Date(str);
  
  cur.setHours(0,0,0,0); // обнулим время
  
  return date !== null && date.getTime() > cur.getTime();
}

console.info('10.99.2022', CheckDate('10.99.2022'));
console.info('40.06.2022', CheckDate('40.06.2022'));
console.info('10.06.2025', CheckDate('10.06.2025'));

→ Ссылка