Olá João, tudo bem?
A sua ideia de código foi boa, seguiu o raciocínio do que o exercício pede.
Porem, você pode fazer o código de forma mais limpa e mais intuitiva para quem o lê, dessa forma:
<meta charset="UTF-8">
<script>
var loginCadastrado = "alura";
var senhaCadastrada = "alura321";
var maximoTentativas = 3;
var tentativaAtual = 1;
while(tentativaAtual <= maximoTentativas) {
var loginInformado = prompt("Informe seu login");
var senhaInformada = prompt("Informe sua senha");
if( loginCadastrado == loginInformado && senhaCadastrada == senhaInformada ) {
alert("Bem-vindo ao sistema, " + loginInformado);
tentativaAtual = maximoTentativas; // acertou, então faço o gasto de todas as tentativas para sair do loop. Lá embaixo vai incrementar + 1!
} else {
if (tentativaAtual == 3) {
alert("Número permitido de tentativas ultrapassado!");
} else {
alert("Login inválido. Tente novamente");
}
}
// vai para a próxima tentativa
tentativaAtual = tentativaAtual +1
}
</script>
Assim ele fica mais pratico para ser interpretado por outros programadores.
Qualquer duvida é só perguntar viu? Bons Estudos!!!!!