Yo tome un camino diferente Math.round(Math.random()9+1); genera sola del 1 al 10, sola hay que estudiar al fondo cado función :D
<meta charset="UTF-8">
Version 3
<br>
<input/>
<button>Verificar</button>
<script>
// Variables
//arrays
var secretos = sorteo(4);
/*
//Funcion .push();
secretos.push(5); // .push(X); carga el array segnalado con en indicado X
//Ingresar #os random por madio de .push(X);
secretos.push(Math.round(Math.random()*10));
*/
// Variables con coneccion a HTML
var input = document.querySelector("input");
var button = document.querySelector("button");
// Parte logica
input.focus();
// Funciones
function verificar() {
// variables de Funcion
var encontrado = false;
for (var posicion = 0; posicion < secretos.length; posicion++) {
if (parseInt(input.value) == secretos[posicion] ) {
alert("Acerto");
encontrado = true;
break;
}
}
if(encontrado == false){
alert("ERROR")
}
input.value = "";
input.focus();
}
// Funcion para generar #os random
function aleatorio() {
return Math.round(Math.random()*9+1);
}
//
function sorteo (cantidad){
var secretos = [];
var contador = 1;
while(contador <= cantidad){
var numRepetidos = false;
numRandom = aleatorio();
console.log(numRandom);
for (var i = 0; i < secretos.length; i++) {
if (numRandom == secretos[i]) {
numRepetidos = true;
break;
}
}
if (numRepetidos == false) {
secretos.push(numRandom);
contador++;
}
}
return secretos;
}
// console.log(); muestra el valor de las variables es consola
console.log(secretos);
// Parte logica
button.onclick = verificar;
</script>