1.3 Управляющие операторы JavaScript.
Операторы подразделяются на следующие категории:
- условный оператор: if...else
- операторы цикла: for, while, break, and continue
- оператор манипулирования объектами: for...in, new,this, and with
- комментарии:(//) и(/*...*/)
1.3.1 Условный оператор.
Синтаксис: if (condition) { statements1 [ } else { statements2 ] }
Если условие condition истинно, выполняется оператор statements1, иначе
statements2. Условие может быть любым JavaScript-выражением, которое можно
оценить как истинное или ложное. Операторы, которые нужно выполнить, могут
быть любыми JavaScript-операторами, включая условные. Более чем один оператор
должен быть заключен в фигурные скобки, { }. В следующем примере функция
checkData возвращает true, если число символов в объекте Тext равно трем,
в противном случае выводит аварийный бокс и возвращает false.
function checkData () {
if (document.form1.threeChar.value.length == 3) {
return true
} else {
alert("Enter exactly three characters. " +
document.form1.threeChar.value + " is not valid.")
return false
}
}
1.3.2 Операторы цикла.
Цикл - набор команд, который выполняется неоднократно до выполнения
указанного условия.
JavaScript поддерживает два вида оператора цикла - for и while.
Внутри операторов могут быть использованы break и continue. Оператор
for ... in также является оператором цикла, но используется для манипулирования
объектом (см. ниже)
Оператор for.
Цикл повторяется до тех пор, пока специфицированное условие не станет
false.
Синтаксис: for ( [начальное выражение]; [условие]; [выражение приращения]
) {операторы}
При выполнении цикла происходит следующее:
- Инициализация начального выражения. Это выражение обычно содержит одну
или несколько переменных цикла, но синтаксис позволяет выражение любой
степени сложности.
- Оценка условия. Если значение условия true, операторы цикла выполняются.
Если значение условия false, цикл прекращается.
- Исполняется выражение приращения.
- Переход к шагу 2.
Пример. Следующий фрагмент программы содержит операторы, которые подсчитывают
количество отбираемых опций в списке. Оператор цикла объявляет переменную
i и инициализирует ее нулем. Проверяет чтобы i была меньше, чем число опций
в объекте, если это так, исполняется оператор if. После каждого прохода
i увеличивается на единицу.
var numberSelected=0
for (var i=0; i < selectObject.options.length; i++) {
if (selectObject.options[i].selected==true)
numberSelected++
}
Оператор while.
Цикл повторяется до тех пор, пока условие истинно (true).
Синтаксис: while (условие) {операторы}
Если условие становится ложным (false), цикл прекращается и управление
передается операторам после цикла. Условие проверяется не непрерывно, а
первоначально и после выполнения всех операторов цикла.
Пример 1. Следующий цикл выполняется, пока n - меньше 3:
n = 0
x = 0
while( n < 3 ) {
n ++
x += n
}
С каждой итерацией, n увеличивается на 1 и добавляется к x. Поэтому,
x и n принимают следующие значения:
- После первого прохода: n = 1 и x = 1
- После второго прохода: n = 2 и x = 3
- После третьего прохода: n = 3 и x = 6
После завершения третьего прохода, условие n < 3 не выполняется,
поэтому цикл заканчивается.
Пример 2: Бесконечный цикл. Необходимо удостовериться, что условие в
цикле в конечном счете становиться ложным; иначе, цикл никогда не будет
закончен, как это происходит в данном примере.
while (true) {alert("Hello, world")}
Оператор break.
Этот оператор прерывает цикл for или while и передает управление оператору,
следующему за оператором цикла. Пример. В следующем фрагменте программы
оператор break прерывает цикл, когда i=3 , и передает управление опера-
тору z=i*x.
var i = 0
while (i < 6) {
if (i == 3)
break
i++
}
z= i*x
Оператор continue.
Этот оператор прерывает выполнение операторов внутри цикла (while или
for) и продолжает выполнение цикла с новой итерации. В противоположность
оператору break выполнение цикла не заканчивается, вместо этого :
- в цикле while происходит переход к проверке условия;
- в цикле for происходит переход к выражению приращения.
В следующем примере приведен оператор while с continue, который выполняется,
когда значение i равно 3. Таким образом n принимает значения 1, 3, 7 и
12.
i = 0
n = 0
while (i < 5) {
i++
if (i == 3)
continue
n += i
}
1.3.3 Оператор манипулирования объектами.
Таким оператором в JavaScript являются for..in. Оператор for..in используется
для итерирования по всем свойствам объекта. Для каждого свойства выполняется
тело цикла. Выглядит оператор следующим образом: for (переменная in объект)
{операторы}
1.3.4 Комментарии.
Комментарии - примечания автора, которые объясняют сценарий. Комментарии
игнорируются интерпретатором. JavaScript поддерживает комментарии в стиле
языка Java:
-комментарий, распространяющийся на одну строку, этому комментария предшествует
двойной слеш (//).
-многострочный комментарий, начинающийся с символов /* и заканчивающийся
символами */.
Следующий пример показывает два комментария:
// Это - однострочный комментарий.
/* Это - многострочный комментарий.
Он может иметь любую длину. */
[ Оглавление ] [ Дальше ]
|