Validar data Typescript - resolvido

4 respostas Resolvido
guilhermebhte

Validar data

let dia = 30
let mes = 2
let ano = 2000

new Date(ano + “-” + mes + “-” + dia)

Não dá erro. Na verdade a data pula para 3 de março. Porque ?

4 Respostas

edumatias

Pegou Março pois no Date o mês se inicia em 0.
0 - Janeiro
1- Fevereiro
2- Março

e por ai vai

guilhermebhte

Mas se coloco,

let dia = 28
let mes = 2
let ano = 2000,

Ele mostra 28 de FEB de 2000

Kassioburgadon

Acho que ele não entende como uma data, pois não existe 30 de fevereiro, ai ele gera uma data aproximada, deve ser por isso, e por qual motivo queria colocar 30 de fevereiro?

guilhermebhte
Solucao aceita

Sim.

O que fiz, foi validar a data de retorno com a data informada.

let resultado = formControl.value.split('/');
        let dia = Number(resultado[0]);
        let mes = Number(resultado[1]);
        let ano = Number(resultado[2]);

        let dataRetornada = new Date(ano + "-" + mes + "-" + dia);

        let resultadoRetornada = dataRetornada.toLocaleDateString().split('/');

        let diaRetornado = Number(resultadoRetornada[0]);
        let mesRetornado = Number(resultadoRetornada[1]);
        let anoRetornado = Number(resultadoRetornada[2]);

        if(dia == diaRetornado && mes == mesRetornado && ano == anoRetornado){
          valido = true;
        } else {
          valido = false;
        }
Criado 25 de abril de 2019
Ultima resposta 25 de abr. de 2019
Respostas 4
Participantes 3