Когда нужно использовать тернарный оператор?
Основы языка
Тернарный оператор используют для коротких условных выражений, когда нужно вернуть одно из двух значений в зависимости от условия — особенно в JSX и присваиваниях.
Синтаксис
условие ? значениеЕслиИстина : значениеЕслиЛожь;Когда применять
Присваивание по условию
const access = age >= 18 ? 'разрешён' : 'запрещён';В JSX (условный рендер)
{isLoading ? <Spinner /> : <Content />}
{user ? <Profile /> : <Login />}Значения по умолчанию, короткие ветки
const label = count > 0 ? `${count} шт.` : 'пусто';Когда НЕ стоит
- Сложная логика — вложенные тернарники нечитаемы, лучше
if/elseили ранний return:
// Плохо — вложенные тернарники
const x = a ? (b ? 1 : 2) : (c ? 3 : 4);- Побочные эффекты — тернарник для выражений (значений), а не для выполнения действий; для действий используют
if. - Только одна ветка — используют
&&или опциональную цепочку:
{isVisible && <Modal />} // вместо isVisible ? <Modal /> : nullКоротко для собеседования
Тернарный оператор условие ? a : b — для коротких условных значений: присваивание, условный рендер в JSX. Не использовать для сложной/вложенной логики (лучше if/ранний return) и побочных эффектов. Для одной ветки — &&.