
JavaScript
Не могу найти ошибку в коде.
Кто нибудь знает, почему после правильного введения пароля вместо одного пишет два раза: "подтвердите действие"?


Вообще всё корява написано !
А дважды срабатывает потому что второй алерт 33 у тебя за условием стоит и срабатывает всегда !
Тут if не очень удобен и красив я бы на твоём месте это сделал при помощи switch case
⚤
А дважды срабатывает потому что второй алерт 33 у тебя за условием стоит и срабатывает всегда !
Тут if не очень удобен и красив я бы на твоём месте это сделал при помощи switch case
⚤
const users = [
{ login: 'admin', pass: 'qwerty' },
{ login: 'vasya', pass: '123' }
];
let usr = prompt('Логин: ');
if (usr) {
usr = usr.toLowerCase();
if (usr = users.find(u => u.login.toLowerCase() === usr)) {
let psw = prompt('Пароль: ');
if (psw && usr.pass === psw)
alert('Доступ разрешен');
else
alert('В доступе отказано');
}
else
alert('Пользователь с таким логином не найден');
}
{ login: 'admin', pass: 'qwerty' },
{ login: 'vasya', pass: '123' }
];
let usr = prompt('Логин: ');
if (usr) {
usr = usr.toLowerCase();
if (usr = users.find(u => u.login.toLowerCase() === usr)) {
let psw = prompt('Пароль: ');
if (psw && usr.pass === psw)
alert('Доступ разрешен');
else
alert('В доступе отказано');
}
else
alert('Пользователь с таким логином не найден');
}
Так как в самом конце у тебя есть alert(war), который выводит переменную war независимо от того, истинно ли какое-либо условие
let user = prompt( "Кто пришел?" );
if( /^админ$/i.test( user )) {
let pass = prompt( "Введите пароль: " );
if( pass === "черный властелин" ) {
alert( "Добро пожаловать!" );
}
else if( pass === null ) {
alert( "Отмена" );
}
else {
alert( "Неверный пароль" );
}
}
else if( user === null ) {
alert( "Отмена" );
}
else {
alert( "Я вас не знаю!" )
}
Код: https://jsfiddle.net/1nqy2h79/1/
if( /^админ$/i.test( user )) {
let pass = prompt( "Введите пароль: " );
if( pass === "черный властелин" ) {
alert( "Добро пожаловать!" );
}
else if( pass === null ) {
alert( "Отмена" );
}
else {
alert( "Неверный пароль" );
}
}
else if( user === null ) {
alert( "Отмена" );
}
else {
alert( "Я вас не знаю!" )
}
Код: https://jsfiddle.net/1nqy2h79/1/
Александр Фирсов
Спасибо, всё получилось.
Компилятор же тебе напишет: после 60000 должен быть символ ;
Похожие вопросы
- Где я сделал ошибку в коде
- Прошу помочь с решением, исправить ошибки в коде.
- Помогите найти ошибку?
- Найдите ошибку, пожалуйста. Редактор ругается на все строки, ничего не выдаёт.
- Проверьте 2 кода ((( пожалуйста и ткните носом на ошибку. В общем 1 код работает частично, а второй вообще не работает. JS
- Не могу понять почему код на js не работает.
- В чем ошибка кода?
- Помогите разобраться в логике кода (замыкания)
- Вопрос по стилю кода. Следует ли проверять наличие свойства в объекте если я точно знаю что оно должно там быть?
- Гляньте код пожалуйста? Он работает, но мне кажется так не пишут. Да и по default что то не хочет работать код.