@kaktys123
HTML, CSS, JS

Как сделать несколько условий в if и чтобы они все выполнялись?

Есть примерно такое условие:
if(function1 && function2){
     // если обе возвращают true что то делаем. 
}


Но вот загвоздка в if должны исполниться обе функции а оператор && проверяет сперва одну если там false то вторую даже не проверяет.

Обе функции возвращают true или false от результата работы. Но в них еще есть функционал который нужно исполнить в обеих независимо от результата.

Придумал варианты записать через запятую)) работает ну js все хавает не знаю правильно ли это.
Еще есть придумал вариант с умножением) true * true = 2 a true * true * false = 0
Еще есть мысль возвращать число 0 или 1 и потом считать сумму и если она равна количеству функций тогда все ок.

Ну это мои варианты. Гугл что то ничего не выдает полезного на этот счет..
Просто интересно есть какое вариант 100% правильный. Вызвать обе функции в if
  • Вопрос задан
  • 77190 просмотров
Решения вопроса 1
@kttotto
пофиг на чем писать
Кажется все забыли, что есть два варианта для "И", так же как и для "ИЛИ".
Первый вариант "&" : будет проверена и левая, и правая части, не зависимо от того, что вернет левая.
Второй вариант "&&" : правая часть будет проверена только в том случае, если левая вернет true.

Поэтому в Вашем варианте, если Вы хотите, чтобы проверка в любом случае выполнилась и слева, и справа, то
if(function1 & function2){
     // если обе возвращают true что то делаем. 
}
Ответ написан
Пригласить эксперта
Ответы на вопрос 4
@res2001
Developer, ex-admin
func1 = function1();
func2 = function2();
if(func1 && func2)
{
...
}
Ответ написан
Самое логичное - вынести
функционал который нужно исполнить в обеих независимо от результата
из этих функций. Вы же так себе сайд эффекты делаете, из-за которых потом страдать будете.
Ответ написан
Комментировать
@L1ar
.net / php
function1 & function2
Ответ написан
Комментировать
@Markfictional
Front-end developer
Я не понял сути твоего вопроса) Попробуй вместо "&&" – (и) использовать "||" – (или).
Ответ написан
Ваш ответ на вопрос

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

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