Все мы знаем, что есть бинарные операторы и унарные. Бинарные работают с двумя операндами (например, 2 - 1, здесь “-” - это бинарный оператор), а унарные - с одним (например, -1, здесь “-” - это уже унарный оператор).
Но в некоторых языках, в том числе и в JavaScript, есть ещё и тернарный оператор, который работает с тремя операндами.
Обычно этот оператор называют условным, но иногда и тернарным. И это единственный тернарный оператор в JavaScript. Обычно его записывают как ?:, хотя в текстах программ он выглядит по другому. Он имеет три операнда, первый записывается перед знаком ?, второй - между ? и :, а третий - после :. Синтаксис:
Условие ? Выражение_1 : Выражение_2
Первый операнд (Условие) должен быть логическим значением (или преобразовываться в логическое значение). Второй и третий операнды могут быть любыми значениями.
Работает он так:
- Если Условие ИСТИННО, то оператор вернёт результат Выражение_1
- Если Условие ЛОЖНО, то оператор вернёт результат Выражение_2
То есть значение, возвращаемое условным оператором, зависит от значения первого операнда.
Те же действия можно выполнить с помощью инструкции if, однако использование тернарного оператора часто бывает проще и требует написания меньшего количества кода. Давайте рассмотрим такой пример:
Здесь мы как раз используем if. Если мы уберём строку user = 'Вася';, то на экран будет выведено просто слово “Привет”. Иначе будет выведено “Привет, Вася” (ну это в нашем случае).
То же самое можно сделать с помощью тернарного оператора:
Да, получилось не намного короче. Но в некоторых случаях такая запись будет и проще, и удобнее. Хотя это не значит, что её надо пихать где надо и не надо.
На этом всё. Подписывайтесь на канал, чтобы ничего не пропустить.