Оператор if ... else в JavaScript (с примерами)

В этом руководстве вы узнаете об операторе if… else для создания программ принятия решений с помощью примеров.

В компьютерном программировании могут возникнуть ситуации, когда вам нужно запустить блок кода среди более чем одной альтернативы. Например, выставление оценок A , B или C на основе оценок, полученных студентом.

В таких ситуациях вы можете использовать if… elseоператор JavaScript для создания программы, которая может принимать решения.

В JavaScript есть три формы if… elseоператора.

  1. если заявление
  2. if… else заявление
  3. if… else if… else заявление

Оператор if в JavaScript

Синтаксис ifоператора:

 if (condition) ( // the body of if )

ifОператор оценивает состояние внутри скобок ().

  1. Если условие оценивается true, выполняется код внутри тела if.
  2. Если условие оценивается false, код внутри тела ifпропускается.

Примечание . Код внутри ( )- это тело ifоператора.

Работа оператора if

Пример 1: оператор if

 // check if the number is positive const number = prompt("Enter a number: "); // check if number is greater than 0 if (number> 0) ( // the body of the if statement console.log("The number is positive"); ) console.log("The if statement is easy");

Выход 1

 Введите число: 2 Число положительное.

Предположим, пользователь ввел 2 . В этом случае условие number> 0оценивается как true. И тело ifоператора выполняется.

Выход 2

 Введите число: -1 Оператор if прост

Предположим, пользователь ввел -1 . В этом случае условие number> 0оценивается как false. Следовательно, тело ifоператора пропускается.

Поскольку console.log("The if statement is easy");находится вне тела ifоператора, он всегда выполняется.

В условиях используются операторы сравнения и логические операторы. Чтобы узнать больше о сравнении и логических операторах, вы можете посетить JavaScript-операторы сравнения и логические операторы.

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

В ifзаявлении может быть необязательное elseпредложение. Синтаксис if… elseоператора:

 if (condition) ( // block of code if condition is true ) else ( // block of code if condition is false )

if… elseОператор оценивает состояние внутри скобок.

Если условие оценивается как true,

  1. код внутри тела ifвыполняется
  2. код внутри тела elseпропускается из выполнения

Если условие оценивается как false,

  1. код внутри тела elseвыполняется
  2. код внутри тела ifпропускается из выполнения
Работа оператора if… else

Пример 2: оператор if… else

 // check is the number is positive or negative/zero const number = prompt("Enter a number: "); // check if number is greater than 0 if (number> 0) ( console.log("The number is positive"); ) // if number is not greater than 0 else ( console.log("The number is either a negative number or 0"); ) console.log("The if… else statement is easy");

Выход 1

 Введите число: 2 Число положительное. Оператор if… else прост

Предположим, пользователь ввел 2 . В этом случае условие number> 0оценивается как true. Следовательно, тело ifоператора выполняется, а тело elseоператора пропускается.

Выход 2

 Введите число: -1 Это либо отрицательное число, либо 0. Оператор if… else прост

Предположим, пользователь ввел -1 . В этом случае условие number> 0оценивается как false. Следовательно, тело elseоператора выполняется, а тело ifоператора пропускается.

JavaScript if… else if инструкция

Оператор if… elseиспользуется для выполнения блока кода из двух альтернатив. Однако, если вам нужно сделать выбор между более чем двумя альтернативами, if… else if… elseможно использовать.

Синтаксис if… else if… elseоператора:

 if (condition1) ( // code block 1 ) else if (condition2)( // code block 2 ) else ( // code block 3 )
  • Если условие1 оценивается как true, кодовый блок 1 выполняется.
  • Если Condition1 имеет значение false, то condition2 оценивается.
    • Если условие 2 есть true, кодовый блок 2 выполняется.
    • Если условие 2 есть false, кодовый блок 3 выполняется.
Работа оператора if… else if… else

Пример 3: if… else if Заявление

 // check if the number if positive, negative or zero const number = prompt("Enter a number: "); // check if number is greater than 0 if (number> 0) ( console.log("The number is positive"); ) // check if number is 0 else if (number == 0) ( console.log("The number is 0"); ) // if number is neither greater than 0, nor zero else ( console.log("The number is negative"); ) console.log("The if… else if… else statement is easy");

Вывод

 Введите число: 0 Число равно 0 Оператор if… else if… else прост

Предположим, пользователь ввел 0 , тогда первое тестовое условие number> 0оценивается как false. Затем number == 0оценивается второе тестовое условие trueи выполняется соответствующий блок.

Вложенный оператор if… else

Вы также можете использовать if… elseоператор внутри if… elseоператора. Это называется вложенным оператором if… else .

Пример 4: Вложенный оператор if… else

 // check if the number is positive, negative or zero const number = prompt("Enter a number: "); if (number>= 0) ( if (number == 0) ( console.log("You entered number 0"); ) else ( console.log("You entered a positive number"); ) ) else ( console.log("You entered a negative number"); )

Вывод

 Enter a number: 5 You entered a positive number

Suppose the user entered 5. In this case, the condition number>= 0 evaluates to true, and the control of the program goes inside the outer if statement.

Then, the test condition, number == 0, of the inner if statement is evaluated. Since it's false, the else clause of the inner if statement is executed.

Note: As you can see, nested if… else makes our logic complicated and we should try to avoid using nested if… else whenever possible.

Body of if… else With Only One Statement

If the body of if… else has only one statement, we can omit ( ) in our programs. For example, you can replace

 const number = 2; if (number> 0) ( console.log("The number is positive."); ) else ( console.log("The number is negative or zero."); )

with

 const number = 2; if (number> 0) console.log("The number is positive."); else console.log("The number is negative or zero."); 

Output

 The number is positive. 

More on Decision Making

В определенных ситуациях тернарный оператор может заменить if… elseоператор. Чтобы узнать больше, посетите Тернарный оператор JavaScript.

Если вам нужно сделать выбор между более чем одной альтернативой на основе заданного условия теста, switchможно использовать оператор. Чтобы узнать больше, посетите переключатель JavaScript.

Интересные статьи...