Я бы наверное пошел с
if (!condition1) log("condition 1 failed");
else if (!condition2) log("condition 2 failed");
else if (!condition3) log("condition 3 failed");
// -------------------------------------------
return condition1 && condition2 && condition3;
который я считаю эквивалентным и намного чище ...
Кроме того, как только клиент решит, что все условия должны быть оценены и записаны в журнал в случае их сбоя, а не только в первом, который выходит из строя, его гораздо легче изменить, чтобы сделать это:
if (!condition1) log("condition 1 failed");
if (!condition2) log("condition 2 failed");
if (!condition3) log("condition 3 failed");
// -------------------------------------------
return condition1 && condition2 && condition3;