Fiz o código apresentado em aula incrementando comentários das funcionalidades de cada linha :)
<meta charset="UTF-8">
<input/>
<button>Compare com o meu segredo</button>
<script>
//sorteia um numero entre 0 a 10
function sorteia() {
return Math.round(Math.random() * 10);
}
function sorteiaNumeros(quantidade) {
var segredos = []; // Cria um array vazio para armazenar os números sorteados.
var numero = 1; // Inicializa uma variável para contar quantos números foram sorteados.
// Enquanto ainda não sorteou a quantidade desejada de números:
while(numero <= quantidade) {
var numeroAleatorio = sorteia(); //Chama a função sorteia() para obter um número aleatório.
// Verifica se o número aleatório não é zero (pois queremos números de 1 a 10).
if(numeroAleatorio !==0) {
var achou = false; // Inicializa uma variável para verificar se o número já foi sorteado anteriormente.
// Percorre o array de segredos para verificar se o número aleatório já foi sorteado antes.
for(var posicao = 0; posicao < segredos.length; posicao++) {
if(segredos[posicao] == numeroAleatorio) {
achou = true; // Se o número já foi sorteado, marca achou como true.
break; // Sai do loop, pois não é necessário continuar verificando.
}
}
// Se o número não foi encontrado no array de segredos, adiciona-o ao array e incrementa o contador de números sorteados.
if(achou == false) {
segredos.push(numeroAleatorio);
numero++;
}
}
}
// Retorna o array de números sorteados.
return segredos;
}
// gera três números aleatórios únicos e armazená-los na variável segredos
var segredos = sorteiaNumeros(3);
console.log(segredos);
//seleciona o elemento input da página e o focalizam, para que o cursor do usuário esteja automaticamente no campo de entrada de texto quando a página for carregada.
var input = document.querySelector("input");
input.focus();
//é um loop for que percorre o array segredos e executa um bloco de código para cada elemento do array
function verifica() {
var achou = false;
for(var posicao = 0; posicao < segredos.length; posicao++) {
if(input.value == segredos[posicao]) {
alert("Você ACERTOU!");
achou = true;
break;
}
}
if(achou == false) {
alert("Você ERROU!");
}
input.value = "";
input.focus();
}
var button = document.querySelector("button");
button.onclick = verifica;
</script>