ridiculousdwarf
@ridiculousdwarf

Почему не работает оператор или?

Если я использую цикл while то у меня появляется второй prompt, но что бы я не написал,он не закрывается.А если я использую if,то чтобы я не написал во втором prompt, он закроется.Что бы я ни написал в первом prompt при if или while, он перейдёт ко второму prompt.Подскажите,как сделать правильно

let a = prompt();
while (a != 'yes' || a != 'no') {
a = prompt('a is not yes or no');
}
  • Вопрос задан
  • 104 просмотра
Решения вопроса 1
Vlad_IT
@Vlad_IT Куратор тега JavaScript
Front-end разработчик
Ну так, это условие всегда true, по той простой причине, что a не может быть сразу yes и no, чтобы в обоих условиях было false. Законом де-Моргана можно перевести данное условие в
!(a === 'yes' && a === 'no')
выглядит подозрительно, не находите? Поэтому да, вы перепутали оператор.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
tema_sun
@tema_sun
Потому что вы хотите И, а не ИЛИ там.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы