Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

isNAN

Boa noite!!! Alguém pode me explicar o codigo linha por linha sou iniciante e não entendi bem a proposta, e mais anunciado pede que o programa pergunte: Digite sua idade, novamente ou Não.


    var idade = parseInt(prompt("Digite sua idade"));

    while(isNaN(idade) == false){

        idade = parseInt(prompt("Digite sua idade"));

    }

        alert(idade);

</script>
3 respostas

Na verdade a resposta correta seria essa:

var idade = parseInt(prompt("Digite sua idade"));

while( isNaN(idade) ) {
    idade = parseInt(prompt("Digite sua idade"));    
}
alert(idade);

parseInt() converte um texto em número : Ou seja ao digitar sua idade ele entende que o texto do numero realmente é um numero e guarda na variável idade.

isNaN É uma função que recebe um parâmetro ( no caso a idade ) e retorna true ou false

Assim o laço só para se for digitado um numero. Enquanto digitar letras ou caracteres especiais ele pede para digitar novamente

Espero ter ajudado!

Boa noite! Wagner Desde já agradeço, mas, talvez eu não soube me expressar não entendi o laço "Enquanto" while() Porque está no bloco que "idade" recebe parseInt(prompt novamente se já temos uma variável com esta função pra mim que sou leigo somente seria necessário um alert/mostra com a mensagem esperada, espera ter explicado minha duvida. while( isNaN(idade) ) , idade = parseInt(prompt("Digite sua idade"));

solução!

Fala Ronaldo, blz?

Esse bloco basicamente faz o seguinte:

Verifica se o valor que idade recebeu NÃO é um numero, ou seja, se alguém digitou um valor inválido. Se o valor for inválido ele repete a linha idade = parseInt(prompt("Digite sua idade"));

Isso ocorrerá até que um valor válido (algum numero) seja inserido.