Условный тернарный оператор в JavaScript обязательно требует все три операнда.
В отличие от, например, PHP, где можно опустить средний операнд:
$uslovie ?: $esli_false
вернёт само
$uslovie
, если то соответствует
true
.
В вашем случае, когда интересует только положительный исход условия, стоит использовать ещё более краткую форму, как и посоветовал
Антон:
condition && do_it();
var test = true;
test && console.log("it was true!");
// или назначение
var Boo = test && "если тру"; // иначе Boo === test (что он там возвращает, 0, NaN, false?)