Olá Fabio, tudo bem com você?
Nesse primeiro momento é difícil mesmo fazer a validação do que o usuário está digitando, então não precisa ser o nosso foco :)
Com o passar dos estudos vamos aprendendo maneiras de conseguir fazer essa validação de uma maneira mais fácil! Mas vou te dar um exemplo bem simples que poderíamos fazer:
- Vou criar uma variável que vai servir para garantir que as informações estão corretas e vai começar como falso:
var valido = false
- Agora vou criar uma função que verifica se o que o usuário digito de fato é um número:
function validaResposta() {
No javascript temos um valor chamado NaN
que significa "Not a Number", sempre que damos parseInt
em um texto ele diz que a nossa variável vale NaN
Então para verificar se o usuário digitou um número nós temos uma função chamada isNaN
que significa: "Não é um número?":
function validaResposta() {
if(Number.isNaN(vitoria)){
alert("O valor deve ser um número!");
return;
}
Então estou criando uma condição, se o valor digitado não for um número, o Number.isNaN(vitoria)
irá ser true e podemos dizer para o usuário que ele digitou um número inválido e saímos da função com o return
Vou fazer isso para a quantidade de vitórias e empates:
function validaResposta() {
if(Number.isNaN(vitoria)){
alert("A quantidade de vitórias deve ser um número")
return;
}
if(Number.isNaN(empate)){
alert("A quantidade de empates deve ser um número");
return;
}
valido = true;
}
Veja que se o usuário digitou tudo corretamente ( não entrou em nenhum if ), eu mudo aquela nossa variável inicial valido
para true
Agora só precisamos de um bloco de repetição para ficar validando:
while(valido == false) {
var vitoria = parseInt(prompt("informe o numero de vitória "));
var empate = parseInt(prompt("informe o número de empates "));
validaResposta();
}
var pontos = (vitoria*3) + empate;
mostra("Seu time possuí " + pontos + " pontos!");
Então iremos entrar nesse while
na primeira vez porque a nossa variável começa como false
, vamos pegar o que ele digitou e chamar a função validaResposta()
, se algum dos valores for invalido iremos executar tudo que está dentro do while
novamente até que todos valores estejam corretos :)
Fique tranquilo se não alguma parte não ficou muito clara, ao longo dos cursos iremos cada vez mais fazer validações e com o tempo vai ficando cada vez mais de boa :)
Conseguiu compreender? Estou a disposição para qualquer coisa :)
Abraços e Bons Estudos!