Verificação de validade de data em JavaScript
Vamos agora aprender a verificar se uma data é
válida. Por exemplo, 31 de janeiro
é uma data válida, enquanto 32 de janeiro
é inválida. Como você sabe, o JavaScript
corrige automaticamente as datas. No nosso
caso, isso significa que 32 de janeiro automaticamente
se tornará 1 de fevereiro.
Esta característica do JavaScript pode ser usada para verificar se uma data existe. Como vamos verificar: criamos um objeto de data e verificamos se as partes da data mudaram ou não. Em outras palavras, se o JavaScript realizou uma correção na nossa data ou não. Se sim, significa que a data que passamos é inválida, e se não, é válida.
Vamos implementar o descrito:
let year = 2025;
let month = 0;
let day = 32;
let date = new Date(year, month, day);
if (date.getFullYear() == year && date.getMonth() == month && date.getDate() == day) {
console.log('válida');
} else {
console.log('inválida');
}
Faça uma função checkDate que
realizará a verificação descrita. Deixe
a função retornar true se a data
for válida e false se não for. Exemplo
de uso desta função para 31 de janeiro
e 32 de janeiro:
console.log(checkDate(2025, 0, 31)); // exibirá true
console.log(checkDate(2025, 0, 32)); // exibirá false