Как и многие другие языки программирования, JavaScript также позволяет писать код, который выполняет различные действия на основе результатов логических или сравнительных условий. Это означает, что вы можете создавать условия в форме выражений, которые оцениваются как истинные (true) или ложные (false) и на основании этих результатов вы можете выполнять определенные действия.

В JavaScript есть несколько условных операторов, которые вы можете использовать для условной логики:

  • Оператор if
  • Оператор if … else
  • Оператор if … else if …. else
  • Оператор switch…case

Оператор if

Оператор if используется для выполнения блока кода, только если указанное условие имеет значение true. Это простейший условный оператор JavaScript, который можно записать так:

if(condition) {
    // Если условие condition истинно
}

В следующем примере будет выводиться «Хороших выходных!» если текущий день пятница:

var now = new Date();
var dayOfWeek = now.getDay(); // Sunday - Saturday : 0 - 6

if(dayOfWeek == 5) {
    alert("Хороших выходных!");
}

Оператор if…else

Вы можете расширить возможности принятия решений в JavaScript, предоставив альтернативный выбор, добавив оператор else.

Оператор if … else позволяет вам выполнить один блок кода, если указанное условие выполняется (true), и другой блок кода, если условие не выполняется (false). Это можно записать так:

if(condition) {
    // Код, который будет выполнен, если условие condition истинно
} else {
    // Код, который будет выполнен, если условие condition ложно
}

Код JavaScript в следующем примере выводит: «Хороших выходных!» если текущий день пятница, в противном случае будет выведен текст «Хорошего дня!».

var now = new Date();
var dayOfWeek = now.getDay(); // Sunday - Saturday : 0 - 6

if(dayOfWeek == 5) {
    alert("Хороших выходных!");
} else {
    alert("Хорошего дня!");
}

Оператор if…else if…else

if … else if … else специальный оператор, который используется для объединения нескольких операторов if … else.

if(condition1) {
    // Код, который будет выполнен, если condition1 истинно
} else if(condition2) {
    // Код, который будет выполнен, если condition1 ложно, а condition2 истинно
} else {
    // Код, который будет выполнен, если оба condition1 и condition2 ложны
}

В следующем примере будет выводиться «Хороших выходных!» если текущий день пятница, и «Хорошего воскресенья!» если текущий день воскресенье, в противном случае будет выведено «Хорошего дня!»

var now = new Date();
var dayOfWeek = now.getDay(); // Sunday - Saturday : 0 - 6

if(dayOfWeek == 5) {
    alert("Have a nice weekend!");
} else if(dayOfWeek == 0) {
    alert("Have a nice Sunday!");
} else {
    alert("Have a nice day!");
}

Вы узнаете об операторе switch-case JavaScript в следующей главе.

Тернарный оператор

Тернарный оператор обеспечивает сокращенный способ записи операторов if … else. Тернарный оператор представлен символом вопросительного знака (?) и принимает три операнда: условие для проверки, результат для true и результат для false. Его основной синтаксис:

var result = (condition) ? value1 : value2

Если условие будет истинным, будет возвращено value1, в противном случае будет возвращено value2. Чтобы понять, как работает этот оператор, рассмотрим следующие примеры:

var userType;
var age = 21;
if(age < 18) {
    userType = 'Child';
} else {
    userType = 'Adult';
}
alert(userType); // Выводит Adult

Используя тернарный оператор, тот же код можно написать более компактным способом:

var age = 21;
var userType = age < 18 ? 'Child' : 'Adult';
alert(userType); // Выводит Adult

Как видно из приведенного выше примера, поскольку указанное условие оценивается как ложное, возвращается значение в правой части двоеточия (:), которое представляет собой строку 'Adult'.

Код, написанный с использованием тернарного оператора иногда бывает трудно прочитать. Тем не менее, он предоставляет отличный способ писать компактные операторы if-else.

Насколько публикация полезна?

Нажмите на звезду, чтобы оценить!

Средняя оценка 5 / 5. Количество оценок: 1

Оценок пока нет. Поставьте оценку первым.