Cuando ingresa una contraseña incorrecta, se muestra una alerta incorrecta, pero la segunda vez que lo hace, simplemente lo deja en el sitio.
var password = "Password123"; var pass = window.prompt("Enter password: "); if (pass == sifra) { alert("Correct"); } else { var pass = window.prompt("Incorrect password: "); }Usted causa que su código no tenga controles después del segundo aviso. En este escenario, debe escribir su código de forma recursion . Cuando falla la verificación de la contraseña, debe comenzar el mismo proceso una y otra vez hasta que pase.
// fn: verify the password function verifyPassword(pass) { if (pass === "sifra") { alert("Correct"); } else { // prompt the password again if it's incorrect promptPassword("Incorrect password: "); } } // fn: promoting the password function promptPassword(msg = "Enter password:") { var pass = window.prompt(`${msg} `); // verify the password verifyPassword(pass); } promptPassword();Esto está sucediendo porque la segunda vez solo está ingresando pero no validando la contraseña si desea validar la contraseña hasta que sea correcta, puede intentar esto simplemente agregue un bucle
var pass = window.prompt("Enter password: "); while (pass !== sifra) { pass = window.prompt("incorrenct password try again: "); } // reaches here only when password is corrent