7
respostas

Comparar variavel.

Olá,

Não entendi porque até a aula 08 para comparar o valor de uma variável eu declarava por exemplo: if (chute == numeroPensado), e a partir da aula 09 tenho que comparar usando o value: if (input.value == segredo). Quando tenho que usar cada uma das situações?

obrigada

7 respostas

Oi Vanessa, pelo que vi, o que aconteceu foi uma mudança na forma como você obtém o número do jogador. No primeiro caso, você estava usando o prompt, já no segundo caso, você passou a usar um campo do formulário.

No caso do input do formulário, você precisa ler o número do jogador direto do campo de texto. Por isso você usa o input.value.

Deu pra entender?

Oi Vanessa,

Na verdade os códigos são diferentes mesmo. Até a aula 08 a entrada dos dados é feita através de um prompt (aquela janelinha que aparece quando você abre a página) e na aula 09 é feita através de um input (campo direto no HTML).

Quando você usa a tag input, você só consegue obter o valor que foi digitado usando input.value.

Abraço!

Oi pessoal, obrigada pela ajuda!

Entendi que se eu ler com o prompt não uso .value, e se eu usar o input utilizo .value. Mas por exemplo, se eu declaro uma variável e atribuo um valor a ela, ou seja, nenhum dos casos..rs.

var bola = azul;

como eu seu se devo acessar o valor da variável if (bola == "azul"){ document.write(Acertou!) }

ou se eu uso if (bola.value == "azul"){ document.write(Acertou!) }

eu uso o .value apenas quando ler do campo, usando input?

Oi Vanessa,

Neste caso você lê do jeito que comentou mesmo bola == "azul" pois a variávelbola` está recebendo este valor diretamente nela.

O input tem várias propriedades, uma delas é justamente o value que você utilizou. Você só consegue usar o value com algumas outras tags específicas que tem ele como atributo como por exemplo a tag option.

Abraço!

Isso mesmo que a Joviane comentou Vanessa. No caso do prompt, você não tem outras propriedades, o prompt faz a atribuição do valor direto na variável. Então você não tem um value ali.

Vamos deixar clara aqui a diferença. Veja esses dois exemplos:

1:

var numero = prompt('digite um número');

2:

var numero = 10;

Nos dois casos, a comparação vai ser a mesma:

if(numero == 23){
  // qualquer código aqui
}

Você está comparando a variável a um valor. A diferença aqui no caso é que no primeiro caso, o valor da variável será digitado na janela de texto que o navegador abre. Mas a comparação é a mesma, pegou a ideia até ai?

Quando você estiver trabalhando com os inputs do formulário, ai sim, você vai estar usando o .value.

if(input.value == 23){
    // qualquer código aqui
}

Ficou mais claro?

Boa pessoal!!

Oi vanessa araujo ainda persiste alguma dúvida ou já foi solucionada ?