после нескольких дней напряженного мышления я выбираю, чтобы задать этот вопрос. У меня есть if
заявление с несколькими условиями:Как уменьшить условия «если заявление»? [уменьшите условия внутри оператора if]
//var current is array of arrays of integers
if((current[rot][0] + x)<blocks.length
&& (current[rot][1] + x)<blocks.length
&& (current[rot][2] + x)<blocks.length
&& (current[rot][3] + x)<blocks.length
&& !$(blocks[current[rot][0]+x]).hasClass("blockLand")
&& !$(blocks[current[rot][1]+x]).hasClass("blockLand")
&& !$(blocks[current[rot][2]+x]).hasClass("blockLand")
&& !$(blocks[current[rot][3]+x]).hasClass("blockLand"))
{
//something to happen here ONCE!
}
Потому что я хочу что-то внутри, чтобы случиться только один раз я думаю, что я не могу использовать for loop
. Итак, мой вопрос: есть ли способ уменьшить количество условий? и как?
P.S .: Да я понял, что я могу использовать flag
(true/false
) внутри и делать свои вещи вне этой if
, в другом if
- но я думаю, что не всегда будет работать, потому что для каждого цикла флаг будет отличаться.
Добавить полный код, также добавить HTML, может быть полезно оптимизировать код – Tushar
Все дело в логике, другой код не имеет ничего общего с этим! –
Если ваша цель - сделать ее более читаемой, вы можете извлечь атомные условия для логических функций или переменных и проверить их –