Como ya muchos compañeros los han escrito, el código requiere que la variable con la que se modifica el intervalo entre 1 y dicha variable, para empezar sea un numero entero (por lo que se ocupa el parseInt(), aunado a eso, se permite que el usuario modifique ese valor con un prompt.
Por lo que dejo aqui mi codigo, que en efecto, se parece a muchos otros, pero que si alguien llega aqui y lo comenta, le agradeceré y sera interesante. Saludos
//cambiar el intervalo de numeros que se puede adivinar, con un número entero (INT)
let intervalo = parseInt(prompt("entre 1 y que número quieres adivinar?"))
//Variables let numeroSecreto = parseInt(Math.floor(Math.random()*intervalo)+1;) let numeroUsuario = 0; let intentos = 1; //let palabraVeces = 'vez'; let maximosIntentos = 3;
while (numeroUsuario != numeroSecreto) {
numeroUsuario = parseInt(prompt(Me indicas un número entre 1 y ${intervalo} por favor:
));
console.log(typeof(numeroUsuario));
if (numeroUsuario == numeroSecreto) {
//Acertamos, fue verdadera la condición
alert(`Acertaste, el número es: ${numeroUsuario}. Lo hiciste en ${intentos} ${intentos == 1 ? 'vez' : 'veces' }`);
} else {
if (numeroUsuario > numeroSecreto) {
alert('El número secreto es menor');
} else {
alert('El número secreto es mayor');
}
//Incrementamos el contador cuando no acierta
//intentos = intentos + 1;
//intentos += 1;
intentos++;
//palabraVeces = 'veces';
if (intentos > maximosIntentos) {
alert(`Llegaste al número máximo de ${maximosIntentos} intentos`);
break;
}
//La condición no se cumplió
//alert('Lo siento, no acertaste el número');
}
}