Hola a todos, tengo una duda con el problema propuestos del ejercicio de inicio de sesion, intente hacerlo por mi cuenta y fracase luego de intentarlo por una hora mas o menos.
La curiaosidad me gano y pues revise la respuesta del instructor que dejo el codigo que adjunto en la parte inferior, pero el problema que le veo a la solución es que funciona en bucle siempre, no para cuando llego al intento maximo de 3 intentos errados de inicio de sesion, en mi mente el codigo esta bien, pero luego de tratar de modificarlo para que pare agregando break; en varias partes del codigo no consigo hacer que pare, tambien observo que luego del primer intento me saca el alert de que agote el número de intentos permitidos, eso quiere decir que el contador no esta revisando que se llege al tercer intento, me tiene bastante frustrado este ejercicio y agradeceria que alguien me pueda ayudar, porque quiero solucionarlo y que funcione de forma correcta, pero soy novato en el tema y no se me ocurre nada, he buscado documentacion de javascript, pero no logro incorporar en mi mente algo que me de luz de los pasos a seguir para lograr la solucion que busco.
El codigo del instructor es funcional pero con los bugs que menciono, busque en el foro y no encontre la correccion a estos errores que menciono.
<meta charset="UTF-8">
<script>
var inicioDeSesionRegistrado = "alura";
var contrasenhaRegistrada = "alura321";
var maximoIntentos = 3;
var intentoActual = 1;
while(intentoActual <= maximoIntentos){
var inicioDeSesionIngresado = prompt("Ingrese su usuario");
var contrasenhaIngresada = prompt("Ingrese su contraseña");
if(inicioDeSesionRegistrado == inicioDeSesionIngresado && contrasenhaRegistrada == contrasenhaIngresada){
alert("Bienvenido al sistema" + inicioDeSesionIngresado);
intentoActual = maximoIntentos; // Lo hice bien, así que paso todos los intentos que falten y salgo del loop. Allá abajo aumentará +1!
} else {
if (intentoActual == 3) {
alert("Agotaste el número permitido de intentos!");
break;
} else {
alert("Inicio de sesión inválido. Favor intente de nuevo");
}
}
// vaya al próximo intento
intentoActual = intentoActual++;
}
</script>