@artik20101

Как оптимизировать условие?

Написал такой скрипт:

let zn = [];
zn[1] = 'кот'; // в ключ 0 добавим элемент 'a'
zn[2] = 'собака'; // в ключ 1 добавим элемент 'b'
zn[3] = 'фрукт'; // в ключ 2 добавим элемент 'c'
while (name!=zn[1] || name!=zn[2] || name!=zn[3]) {
let name = prompt('Введите правильное имя?');
if (name==zn[1] || name==zn[2] || name==zn[3]) {alert('Красава');}
else {alert('ноуп');} }

С одним моментом возился пол дня. Я пытался в if объединить несколько индексов, типа name==zn[1 || 2 || 3] из массива zn. но тогда срабатывал только самый первый. В итоге разобрался, что нужно отдельно прописывать name==zn[1] || name==zn[2] || name==zn[3] чтобы работало. Есть какой то способ объединить их, как я хотел? А то прописывать отдельно каждый индекс name такое, если их очень много.
  • Вопрос задан
  • 193 просмотра
Решения вопроса 1
nuykon
@nuykon
Full Stack Developer
Не понимаю ответивших ранее, причем тут вообще цикл... И не очень понимаю ТС, но:
if (name==zn[1] || name==zn[2] || name==zn[3])
стоит заменить на
if (zn.includes(name))
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
yupiter7575
@yupiter7575
Python программист
Помойму тут больше подойдет цикл do while
Ответ написан
kirbi1996
@kirbi1996
Можно через map или find проверять
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы