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

[Projeto] Dúvida

Estou tentando fazer um botão que me retorna uma mensagem dizendo se o numero digitado é positivo ou negativo, porem ele está me retornando NaN, o que tenho que alterar para que ele funcione?

<meta charset="utf-8">

<input/>
<button> digite um numero </button>

<script>

     var input = document.querySelector("input");
        input.focus();

     var numero = parseFloat(input.value);

function verifica() {

if(input.value >0) {
    alert(numero + " é um número positivo");
    } else if (numero <0) {
        alert(numero + " é um numero negativo");
    } 

        input.value = "";
        input.focus();
}
     var button = document.querySelector("button");

    button.onclick = verifica;

 </script>

2 respostas
solução!

Oi, João

O Valor de "numero" tem que ser chamado dentro da função "verifica"


function verifica() {
  var numero = parseFloat(input.value);

Oi, João! Tudo bem?

Para que seu código funcione, você precisa declarar a variável numero dentro da função verifica(). Dessa forma:

<meta charset="UTF-8">

<input/>
<button> digite um numero </button>

<script>

    var input = document.querySelector("input");
    input.focus();

    function verifica() {

        var numero = parseFloat(input.value);
        if (input.value > 0) {
            alert(numero + " é um número positivo");
        } else if (numero < 0) {
            alert(numero + " é um numero negativo");
        }

        input.value = "";
        input.focus();
    }
    var button = document.querySelector("button");

    button.onclick = verifica;

</script>

Agora ele funciona como o esperado. Espero ter ajudado!

Qualquer dúvida, estou por aqui.

Abraços e bons estudos! Ótimo final de semana :)