Así lo hice yo, muchachos.
Usé Math.random, usé localeCompare y un ciclo do-while.
<script>
function saltarLinea(cantidadSaltos) {
//Hará la cantidad de saltos de línea que se
//indiquen como argumento al hacer el llamado a la función
let i = 1;
while (i <= cantidadSaltos) {
document.write("<br>");
i++;
}
}
function generarNumeroAleatorio() {
let rnd = Math.random();
return rnd;
}
var continuar = true;
do {
let rnd = parseInt(generarNumeroAleatorio() * 10);
let seleccion;
let numeroIngresado = parseInt(
prompt(
"<-----------------¡Adivinador!----------------->\n" +
"Trata de adivinar el número entre 0 y 9. \n\n" +
"Tu entrada: "
)
);
if (numeroIngresado == rnd) {
seleccion = prompt(
"¡Felicitaciones :) !\n" +
"Descubriste el número secreto (" +
numeroIngresado +
")\n\n" +
"¿Desea continuar? si o no:",
"si"
);
} else if (numeroIngresado + 1 == rnd || numeroIngresado - 1 == rnd) {
seleccion = prompt(
"¡Mala suerte :(!\n" +
"Estuviste muy cerca del número secreto (" +
rnd +
")\n\n" +
"¿Desea continuar? si o no:",
"si"
);
} else {
seleccion = prompt(
"¡Mala suerte :(!\n" +
"No descubriste el número secreto (" +
rnd +
")\n\n" +
"¿Desea continuar? si o no:",
"si"
);
}
let resultado = seleccion.localeCompare("no");
if(resultado == 0){
continuar = !continuar;
}
} while (continuar);
</script>