Oi Gabrieli
Você está pedindo o login e senha 2 vezes antes de fazer a verificação e é isso que está acontecendo quando executa o programa, você digita e somente na segunda vez ele verifica.
Outro detalhe é que você no final do while está atribuindo tentativaAtual a limitetentativas + 1 e faz ele ficar com o valor 4 e assim não irá repetir o laço do while.
Aqui está seu código com as linhas comentadas para ele executar como quer:
<meta charset="UTF-8" />
<script>
var loginCadastrado = 'alura';
var senhaCadastrada = 'alura321';
// var loginInformado = prompt('Informe seu login');
// var senhaInformada = prompt('Informe sua senha');
var limitetentativas = 3;
var tentativaAtual = 1;
while (tentativaAtual <= limitetentativas) {
var loginInformado = prompt('Informe seu login');
var senhaInformada = prompt('Informe sua senha');
if (
loginCadastrado == loginInformado &&
senhaCadastrada == senhaInformada
) {
alert('Bem-vindo ao sistema ' + loginInformado);
tentativaAtual = limitetentativas + 1; // deve ficar aqui o controle para sair do loop
} else if (tentativaAtual == 3) {
alert('Número permitido de tentativas ultrapassado!');
tentativaAtual++;
} else {
alert('Login inválido. Tente novamente');
tentativaAtual++;
}
// tentativaAtual = limitetentativas + 1;
}
</script>
Parabéns pelo empenho nos estudos!
Continue praticando e qualquer dúvida pode contar com a gente.