Veo que muchos usaron While, pero a mí se me facilitó más usar el ciclo for. comparto mi código por si les es de utilidad.
<meta charset="utf-8">
<h1>Simulando una pantalla de inicio de sesión</h1>
<script>
function saltarLinea()
{
document.write("<br>");
document.write("<br>");
document.write("<br>");
}
function imprimir(frase)
{
document.write(frase);
saltarLinea();
}
//Variables globales
var inicioDeSesionRegistrado = "alura";
var contrasenhaRegistrada = "alura321";
///////////////////////////////////////
for (var numIntentos = 1; numIntentos <= 3; numIntentos++)
{
var inicioDeSesionIngresado = prompt("Ingrese su Usuario");
var contrasenhaIngresada = prompt("Ingrese su contraseña");
if (inicioDeSesionIngresado == inicioDeSesionRegistrado && contrasenhaIngresada == contrasenhaRegistrada)
{
imprimir("Bienvenido al sistema " + inicioDeSesionIngresado);
break;
}
else
{
if (numIntentos == 3)
{
alert("Usted agotó sus oportunidades de ingresar. Contacte con su Administrador para desbloquear el sistema");
break;
}
alert("inicio de sesión inválido. Favor de intentar de nuevo");
if (numIntentos == 2)
{
alert("Le queda un Intento para Ingresar al sistema. Asegurese de introducir bien su usuario y contraseña.");
}
}
}
imprimir("FIN");
</script>