45. Условные переходы.

if

Две формы записи:

if (выражение)
инструкция
if (выражение)
инструкция1
else
инструкция2

Выражение вычисляется, результат приводится к boolean.

Ложными являются следующие значения

switch

switch (expression) {
case valueExpression1:
// инструкции, соответствующие valueExpression1
[break;]
...
case valueExpressionN:
// инструкции, соответствующие значению valueExpressionN
[break;]
[default:
// инструкции, которые выполняются при отсутствии совпадений
[break;]
]
}

На первый взгляд похожа на аналоги из других языков. Однако после case указываются выражения!

Сначала вычисляем expression. Затем вычисляем выражение valueExpression1. Если значения совпали (===), выполняем соответствующий набор инструкций. Если не совпали, переходим к вычислению valueExpression2.

  1. Часть default не является обязательной.
  2. Части case можно группировать:
    case 0:
    case 1:
    // инструкции
    
  3. Набор инструкций после case (и default) может завершаться переходом (break, return), но не обязан!