Условие всегда ленивое и хочет побыстрее выйти. Если v1 будет true, то что там дальше его не будет интересовать:
if (v1 == true || v2 == true) {...}
Таким образом, если у нас есть такой код:
var v1 = CalcV1(); var v2 = CalcV2(); if (v1 == true || v2 == true) {...}
Выглядит хоть и симпатично, но совершенно непроизводительно.
Лучше писать так:
if (CalcV1() == true || CalcV2() == true) {...}
Естественнно нужно понимать, что CalcV2 вызываться не будет, если CalcV1 вернет true, поэтому не нужно на это расчитывать. Но я надеюсь, что вы это знаете :)