PassFront
  1. PassFront
  2. База знаний
  3. Продвинутые темы

Для чего нужен &&?

Продвинутые темы

Оператор `&&` (логическое И) нужен для проверки условий, условного выполнения кода, защиты от null и условного рендера в JSX.

Что делает

Возвращает первый ложный операнд или последний, если все истинны:

true && 'a';  // 'a'
0 && 'a';      // 0
'a' && 'b';    // 'b'

Применения

Логические условия

if (isValid && isReady) { submit(); }

Условное выполнение (короткое замыкание)

isValid && submit(); // submit только если isValid

Правая часть не выполнится, если левая ложна.

Защита от null/undefined

user && user.name;         // name, только если user есть
data && data.items.length; // безопасный доступ

Условный рендер в React

{isVisible && <Modal />}
{items.length > 0 && <List />}
{error && <Error message={error} />}

Короткое замыкание

&& не вычисляет правую часть, если левая ложна — оптимизация и безопасность:

cached && expensiveOperation(); // expensive не вызовется, если cached ложно

Осторожно в JSX

{count && <X/>} при count === 0 отрендерит 0. Используют {count > 0 && <X/>}, {!!count && <X/>} или тернарный оператор.

Коротко для собеседования

&& нужен для проверки условий (a && b), условного выполнения через короткое замыкание (isValid && submit()), защиты от null (user && user.name) и условного рендера в JSX ({show && <X/>}). Возвращает первый ложный операнд или последний. В JSX осторожно с 0 (лучше count > 0 &&).

Другие вопросы раздела