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

Dúvida no Ex. 1 da Aula 7 - Desafio final

Olá! Estou gostando muito das aulas. Porém ainda estou com algumas dúvidas no seu código de exemplo.

Primeiro: porque === ao invés de ==?

Ainda o código está com algumas falhas: 1. É permitido colocar números repetidos 2. Números maiores que 60 e menores que 0 também estão sendo aceitos.

3 respostas
solução!

Oi Thiago,, tudo bem?

O === leva em consideração também o tipo da variável. Por exemplo, considere:

var x = 2

Aí, x é uma variável do tipo número, com o valor de 2.

Se voce verificar se x == 2 ele retornará true.

Se você verificar se x === "2", ele retornará false, pois agora além de verificar o valor, ele verificará o TIPO da variável, que nesse caso é uma variável do tipo texto, pois está entre aspas.

Com relação a suas outras perguntas, você precisaria criar uma função para verificar se o valor inserido é igual a um já inserido, se sim, você não pega o valor.

Mesma coisa para outra parte, verificar se o número inserido é menor que 0 ou ( || ) maior que 60.

Espero ter ajudado,

abcs

Oi Thiago!

Quando você usa ==, se você estiver usando "2" e 2, por exemplo, o JavaScript tentará converter esses números para o mesmo tipo de dado e fará a comparação. O valor nesse caso será verdadeiro.

Porém, se vc tiver números "iguais" mas em tipos diferentes (número e string) , caso você use o operador === ele vai retornar false, pois esse operador compara se eles são ESTRITAMENTE iguais.

Você pode se aprofundar um pouco nisso neste artigo da MDN https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Guide/Igualdade

Quanto ao desafio, não era obrigatório validar se os números eram repetidos, mas vc poderia criar uma condição para ele varrer o array antes de adicionar um número no sorteio.

Para os números serem maiores do que 0, vc pode adicionar uma condição antes de adicionar os números sorteados

//se o numero sorteado for diferente de 0
if(numeroSorteado != 0){
 //adiciona os números sorteador no array
}

para que ele nunca inclua o 0.

Espero ter ajudado. :)

Estranho...nunca tinha visto isso!!! Mas agradeço a resposta!