JavaScript. Подробное руководство, 6-е издание, стр. 47
<b>{</b><b> х = Math.PI;</b><b> сх = Math.cos(x);</b><b> console. log("cos(7t) = " + сх);</b><b>}</b>Здесь есть несколько аспектов, на которые следует обратить внимание. Во-первых, составная инструкция не завершается точкой с запятой. Отдельные инструкции внутри блока завершаются точками с запятой, однако сам блок - нет. Во-вторых, строки внутри блока оформлены с отступами относительно фигурных скобок, окружающих их. Это не является обязательным требованием, но подобное оформление программного кода упрощает его чтение и понимание. Наконец, напомню, что в языке JavaScript не поддерживается область видимости блока, поэтому переменные, объявленные внутри блока, не являются частными по отношению к этому блоку (подробности смотрите в разделе 3.10.1).
Объединение инструкций в более крупные блоки инструкций используется в языке JavaScript повсеместно. Подобно тому как выражения часто включают другие подвыражения, многие инструкции JavaScript могут содержать другие инструкции. Формальный синтаксис языка JavaScript обычно позволяет использовать не более одной подынструкции. Например, синтаксис инструкции цикла
<b>while</b>Составные инструкции позволяют использовать множество инструкций там, где синтаксис JavaScript допускает только одну инструкцию. Пустая инструкция действует противоположным образом: она позволяет не вставлять инструкции там, где они необходимы. Пустая инструкция имеет следующий вид:
Встретив пустую инструкцию, интерпретатор JavaScript не выполняет никаких действий. Пустая инструкция может оказаться полезной, когда требуется создать цикл с пустым телом. Взгляните на следующий цикл
<b>for</b><b>for</b><b>// Инициализировать массив а</b><b>for(i = 0; і < a.length; a[i++] = 0) ;</b>В этом цикле вся работа выполняется выражением
<b>a[i++] = 0</b>Обратите внимание, что ошибочное добавление точки с запятой после закрывающей круглой скобки в инструкции
<b>for, while</b><b>if</b><b>if ((а == 0) || (Ь == 0)); // Ой! Эта строка ничего не делает... </b><b>о = null; // а эта будет выполняться всегда.</b>Если вы собираетесь намеренно использовать пустую инструкцию, нелишним будет добавить комментарий, поясняющий ваши намерения. Например:
<b>for(i = 0; і < a.length; a[i++] = 0) /* пустое тело цикла */;</b>5.3. Инструкции-объявления
Инструкции
<b>var</b><b>function</b>В подразделах, следующих ниже, описываются инструкции
<b>var</b><b>function</b>5.3.1. Инструкция var
Инструкция
<b>var</b><b>var имя_1 [ = значение_1] [ ..... имя_n [= значение_n]]</b>За ключевым словом var следует список объявляемых переменных через запятую; каждая переменная в списке может иметь специальное выражение-инициализатор, определяющее ее начальное значение. Например:
<b>var і; // Одна простая переменная</b><b>var j = 0; // Одна переменная, одно значение</b><b>va гр, q; // Две переменные</b><b>var greeting = "hello" + name; // Сложный инициализатор</b><b>var х = 2.34, у = Math.cos(0.75), r, theta; // Множество переменных </b><b>var х = 2, у = х*х; // Вторая переменная использует первую</b><b>var х = 2, // Множество переменных...</b><b>f = function(x) { return х*х }, // каждая определяется</b><b>у = f(х); //в отдельной строке</b>Если инструкция var находится внутри тела функции, она определяет локальные переменные, видимые только внутри этой функции. При использовании в программном коде верхнего уровня инструкция
<b>var</b><b>var</b>Если в инструкции
<b>var</b><b>undefined</b><b>var</b><b>undefined</b>