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

isNaN - Números + letras

Boa noite.

No seguinte código, ao digitar números + texto, o número ao início do código está sendo "convertido" em número no alert(idade). Exemplos: idade = 123abcd , programa retorna 123 no alert idade = abcd123, programa pede novo input idade = 123abcd123, programa retorna 123

Alguém poderia explicar o comportamento exato da função? Obrigado!

<meta charset="UTF-8">
<script>
    var idade = parseInt(prompt("Digite sua idade"));
    while( isNaN(idade) ) {
        idade = parseInt(prompt("Digite sua idade"));    
    }
    alert(idade);
</script>
2 respostas
solução!

Opa. Dei uma olhada no MDN e lá faz uma afirmação: "Valor de retorno Um número inteiro analisado a partir da string fornecida. Se o primeiro caracter não puder ser convertido para um número, NaN é retornado." MDN. Isso explica sua questão.

Obrigado pela resposta, havia pesquisado apenas sobre a isNaN e não havia nada a respeito.