2
respuestas

Simulando una pantalla de inicio de sesión - mejor que el del instrutor

Hola dejo un ejemplo de mi código lo más simple posible y trabaja excelente:

meta charset="UTF-8">

<script>

    var inicioDeSesionRegistrado = "alura";
    var contrasenhaRegistrada = "alura321";

    var contador = 1;

    while(contador<=3){

    var inicioDeSesionIngresado = prompt("Ingrese su usuario");
    var contrasenhaIngresada = prompt("Ingrese su contraseña");

    if( inicioDeSesionRegistrado == inicioDeSesionIngresado && contrasenhaRegistrada == contrasenhaIngresada ) {
        alert("Bienvenido al sistema " + inicioDeSesionIngresado);
        break;

    } else if (contador == 3) {
        alert("Máximo de intentos permitidos.")

    }
        else{
            alert("inicio de sesión inválido. Favor intente de nuevo");
        }

    contador++;

}

</script>
2 respuestas

Hola Camilo, tengo un código bastante similar al tuyo, pero en mi caso no saltan las alertas, e independientemente de los datos (correctos o erróneos) que ingrese en el prompt, sigue pidiéndome los datos una y otra vez... podrías marcarme cual es mi error? dejo aquí mi código

<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 sus contraseña");

        if (inicioDeSesionIngresado == inicioDeSesionRegistrado && contrasenhaIngresada == contrasenhaRegistrada) {
            alert("Bienvenido " + inicioDeSesionIngresado);
            break;
        } if {
            (intentoActual == 3){
                alert("Agotaste los intentos");
            } else() {
                alert("Datos ingresados incorrectos, intente de nuevo");
            }
        }
       intentoActual = intentoActual + 1;
    }


</script>

tienes error en el segundo if elimina el corhete ya que seguido de un if estan los () y en el else elimina los parentesis (), sobra el corchete que está arriba de intentoActual = intentoActual + 1; y listo quedaría algo así:

<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 sus contraseña");

        if (inicioDeSesionIngresado == inicioDeSesionRegistrado && contrasenhaIngresada == contrasenhaRegistrada) {
            alert("Bienvenido " + inicioDeSesionIngresado);
            break;
        } if (intentoActual == 3){
                alert("Agotaste los intentos");
            } else {
                alert("Datos ingresados incorrectos, intente de nuevo");
            }

       intentoActual = intentoActual + 1;
    }


</script>