Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Qual o problema do meu código? Fica um ALERT infinito

<meta charset="UTF-8">
<script>

    var loginCadastrado = "alura";
    var senhaCadastrada = "alura321";

    var loginInformado = prompt("Informe seu login");
    var senhaInformada = prompt("Informe sua senha");
    var chances = 3

    while(chances > 0) {
        if( loginCadastrado == loginInformado && senhaCadastrada == senhaInformada ) {

            alert("Bem-vindo ao sistema " + loginInformado);
        } else {

            alert("Login inválido. Tente novamente");
        }
    }

    chances = chances - 1

</script>
1 resposta
solução!

Olá Santiago, tudo bem?

O contador do while deve estar dentro do laço. Então a linha chances = chances - 1 tem que vir antes do fechamento. Também coloquei a chamada de um novo login e senha dentro do laço caso a senha esteja errada. Dá uma olhada abaixo:

 var loginCadastrado = "alura";
    var senhaCadastrada = "alura321";

    var loginInformado = prompt("Informe seu login");
    var senhaInformada = prompt("Informe sua senha");
    var chances = 3

    while(chances > 0) {
        if( loginCadastrado == loginInformado && senhaCadastrada == senhaInformada ) {

            alert("Bem-vindo ao sistema " + loginInformado);
        } else {

            alert("Login inválido. Tente novamente");
            loginInformado = prompt("Informe seu login");
            senhaInformada = prompt("Informe sua senha");
        }
        chances = chances - 1
    }

    /* chances = chances - 1 */

Ainda há alguns ajustes no código a serem feitos. Tente resolvê-los e poste aqui novamente.