Что значит "Все операторы возвращают значение"?
Куда они возвращают? Что имеется в виду под словом возврат?
Может на этом примере будет понятно, как бы возврат вычисления.
Вернуть - быть обязанным. Чему? Например есть оператор сложения, ему пришло два int операнда, вот он "должен" тебе вернуть результат своей работы.
Надеюсь объяяснил просто для понимания
Возврат - это что-то вроде "равно".
1 + 1 - будет 2
0 || 1 - будет 1
true ? 1 : 0 - будет 1
[1,2,3].includes(10) && 5 - будет false
Если оператору не с чем работать, то будет ошибка. Поэтому возврат будет всегда.
Когда ты пишешь 1 + 2 или 1 * 2, ты передаешь параметры 1 и 2 оператору + или *. Результат математического вычисления переданных параметров он возвращает тебе.
Так же внутри функции пишется return 5, что переводится как вернуть 5.
Можно для сокращения кода писать к примеру:
isTrue && (Блок кода)
Если isTrue = true, блок кода выполняется. Так можно писать, и это будет работать, для сокращения кода полезно, не знаю как другие считают, но мне кажется что так лучше не делать, максимум простые условия. Не стоит оно того