Java Script. После одного блока не переходит к другой части кода
Доходит только до 12 строки и не переходит к следующей проверке, получается у пользователя есть три попытки ввести правильный пороль
let login1 = prompt("Введите логин:");
const passw = '123456'
if (login1 === 'Admin'){
let pass = prompt('Введите пороль:');
if (pass === passw){
console.log( 'Добро пожаловать админ!' );
}else if(pass !== passw){
console.log('Неверный пороль');
}else if (login1 === 'Admin'){
let pass = prompt('Введите пороль:')
if (pass === passw){
console.log( 'Добро пожаловать админ!' );
}else{
console.log( 'Неверный пароль');
}
}else if (login1 === 'Admin'){
let pass = prompt('Введите пороль:')
if (pass === passw){
console.log( 'Добро пожаловать админ!' );
}else{
console.log('Вы три раза не правильно ввели пароль обновите страницу и попробуйте заново')
}
}else if (login1 !== 'Admin'){
console.log( 'вы неправильно ввели логин попробуйте заново' )
}
Ответы (2 шт):
Автор решения: Hi_TecH
→ Ссылка
Возможно причина не в этом, но вы фигурную скобку пропустили, но правда на 9-й строчке, если считать чисто этому коду:
let login1 = prompt("Введите логин:");
const passw = '123456'
if (login1 === 'Admin'){
let pass = prompt('Введите пароль:');
if (pass === passw){
console.log( 'Добро пожаловать админ!' );
}else if(pass !== passw){
console.log('Неверный пароль!');
} //////////////////Этой скобки у Вас не было.
}else if (login1 === 'Admin'){
let pass = prompt('Введите пароль:')
if (pass === passw){
console.log( 'Добро пожаловать админ!' );
}else{
console.log( 'Неверный пароль!');
}
}else if (login1 === 'Admin'){
let pass = prompt('Введите пароль:')
if (pass === passw){
console.log( 'Добро пожаловать админ!' );
}else{
console.log('Вы три раза не правильно ввели пароль обновите страницу и попробуйте заново')
}
}else if (login1 !== 'Admin'){
console.log( 'Неверный логин!' )
}
P.S. И да действительно, зачем столько повторяющегося кода?
Вот на мое мнения практически готовый код.
А если console.log заменить на alert, выглядит прикольнее. Но тут на вкус и цвет, как говорится.
UPD. Я что то не обратил внимания, что вы написали, что у пользователя всего 3 попытки. Подкорректировал код.
let login,
pass,
temp = 3,
i = 1;
const loginw = 'Admin',
passw = '123456';
login1 = prompt('Введите логин:');
while (login1 !== loginw) {
if (login1 == null) {
break;
}
console.log('Неверный логин!');
login1 = prompt('Введите логин:');
}
if (login1 == null) {
console.log('Вы отменили ввод логина!');
}
if (login1 === loginw) {
pass = prompt('Введите пароль:');
while (pass !== passw) {
if (pass == null) {
break;
}
if (i < temp) {
console.log('Неверный пароль! Осталось попыток:', temp - i, '.');
pass = prompt('Введите пароль:');
} else {
console.log('Вы три раза неправильно ввели пароль, обновите страницу и попробуйте заново!');
break;
}
i++;
}
if(pass === passw){
console.log('Добро пожаловать, Админ!');
}
if (pass == null) {
console.log('Вы отменили ввод пароля!');
}
}
Автор решения: Енот
→ Ссылка
У меня получилось вот так, c alert думаю было бы лучше, но в задании нужно чтобы выводилось в консоль:
let login = prompt('Введите логин:')
const password = '123456';
let temp = 3,
i = 1,
input;
if (login === 'admin'){
while (i <= temp) {
input = prompt('Введите пароль:');
if (input === null) {
break;
}
if(password === input){
console.log('Добро пожаловать админ!');
break;
} else if (i < temp) {
console.log('Неверный пароль, у вас осталось', temp - i, 'попыток');
} else {
console.log('вы три раза не правильно ввели пароль обновите страницу и попробуйте заново');
}
i += 1;
}
}else{
console.log('вы неправильно ввели логин попробуйте заново')
}