<meta charset="utf-8">
<input/>
<button>Verificar si acertó con el secreto</button>
<script>
//var secreto = Math.round(Math.random()*10);
var secreto = [3,5,7,9]
var input = document.querySelector("input");//comando para tomar dato del input
input.focus();// colocar el cursor en el input, para mejorar la experiencia del cliente
//función
function verificar() {
// variable para encontrar
var encontrado = false;
// for para interar el arreglo
for (var posicion = 0; posicion < 4; posicion++) {
// cuerpo de la función
if (parseInt(input.value) == secreto[posicion]) {
alert("Usted acertó")
encontrado = true;
break;// si lo encuentra salir de una vez
}
}
// condicional si erró, mostrar mensaje
if (encontrado == false) {
alert("Usted erró");
}
// reset de input
input.value="";
input.focus();
}
var button = document.querySelector("button");//comando para tomar dato del button
button.onclick = verificar; // llamar la función verificar, para que analise si acierta el secreto
</script>
Hola, creo que tu error podría ser en esta validación
if(encontrado = false){
alert("Usted erró");
}
si la colocaste de esta manera no estas comparando la variable encontrado con false por lo que tu código no mostrara ningun mensaje
if(encontrado == false){
alert("Usted erró");
}
La manera correcta sería usando doble = para que se cumpla la sentencia y te muestre el mensaje de error.
Recuerda que no es lo mismo:
encontrado = false //Aquí estas asignando un valor al colocar un solo =
encontrado == false //Aquí estas igualando un valor al colocar ==
muchas gracias