Блоки

JavaScript позволяет нам объединить несколько выражений в одно. Такое выражение называется блочным выражением или просто блоком. Составляющие его выражения заключают в фигурные скобки, например:

{

b = '12';

c = a — b;

}

Как правило, блоки не существуют сами по себе. Чаще всего они входят в состав других сложных выражений.

Условные выражения

Условное выражение позволяет нам выполнить одно из двух входящих в него выражений в зависимости от выполнения или невыполнения какого-либо условия. В качестве условия используется значение логической переменной или результат вычисления логического выражения.

Листинг 14.7 иллюстрирует формат условного выражения.

Листинг 14.7

if (<условие>)

<блок 'то'>

else

<блок 'иначе'>

Существует также другая, 'вырожденная' разновидность условного выражения,

содержащая только одно выражение, которое выполняется при выполнении условия и пропускается, если условие не выполнено:

if (<условие>)

<блок 'то'>

Для написания условных выражений предусмотрены особые ключевые слова if и

else. Отметим, что условие всегда записывают в круглых скобках.

Если условие имеет значение true, то выполняется блок 'то'. Если же условие имеет значение false, то выполняется блок 'иначе' (если он присутствует в условном выражении). А если блок 'иначе' отсутствует, выполняется следующее выражение Web-сценария.

ВНИМАНИЕ!

Значения null или undefined преобразуются в false. Не забываем об этом.

Рассмотрим несколько примеров.

В листинге 14.8 мы сравниваем значение переменной x с единицей и в зависимости от результатов сравнения присваиваем переменным f и h разные значения.

Листинг 14.8

if (x == 1) {

a = 'Единица';

b = 1;

}

else {

a = 'Не единица';

b = 22222;

}

Условие может быть довольно сложным (листинг 14.9).

Листинг 14.9

if ((x == 1) && (y > 10))

f = 3;

else

f = 33;

Здесь мы использовали сложное условие, возвращающее значение true в случае,

если значение переменной x равно 1 и значение переменной y больше 10. Заметим также, что мы подставили одиночные выражения, т. к. фрагменты кода слишком просты, чтобы оформлять их в виде блоков.

Условный оператор?

Если условное выражение совсем простое, мы можем записать его немного по-другому. А именно, воспользоваться условным оператором ?:

<условие>? <выражение 'то'>: <выражение 'иначе'>;

Достоинство этого оператора в том, что он может быть частью выражения. Например:

f = (x == 1 && y > 10)? 3: 33;

Фактически мы записали условное выражение из предыдущего примера, но в виде простого выражения. Компактность кода налицо. Недостаток же оператора? в том, что с его помощью можно записывать только самые простые условные выражения.

Приоритет условного оператора один из самых низких. Приоритет ниже него имеют только операторы присваивания.

Выражения выбора

Выражение выбора — это фактически несколько условных выражений, объединенных в одном. Его формат иллюстрирует листинг 14.10.

Листинг 14.10

switch (<исходное выражение>) {

case <значение 1> :

<блок 1>

[break;]

[case <значение 2> :

Добавить отзыв
ВСЕ ОТЗЫВЫ О КНИГЕ В ИЗБРАННОЕ

1

Вы можете отметить интересные вам фрагменты текста, которые будут доступны по уникальной ссылке в адресной строке браузера.

Отметить Добавить цитату