Андрей Попов - Windows Script Host для Windows 2000/XP
Операторы отношения и логические операторы
Операторы отношения используются для сравнения значений РґРІСѓС… переменных. Рти операторы, описанные РІ табл. Рџ2.11, РјРѕРіСѓС‚ возвращать только логические значения true или false.
Таблица П2.11. Операторы отношения
Оператор Условие, РїСЂРё котором возвращается trueВ > Левый операнд больше правого >= Левый операнд больше или равен правому < Левый операнд меньше правого <= Левый операнд меньше или равен правому = Левый операнд равен правому <> Левый операнд РЅРµ равен правомуВТакже внутри условных операторов РјРѕРіСѓС‚ применяться логические операторы (табл. Рџ2.12).
Таблица П2.12. Логические операторы
Оператор Описание Not Оператор отрицания. Возвращает true, если операнд равен false. Р’ противном случае возвращает falseВ Or Оператор отношения "РР›Р". Возвращает true, если РѕРґРёРЅ РёР· операндов равен true. Р’ противном случае возвращает falseВ Xor Оператор отношения "РСКЛЮЧАЮЩЕЕ РР›Р". Возвращает true, если РѕРґРёРЅ РёР· операндов равен true, Р° РґСЂСѓРіРѕР№ равен false. Р’ противном случае возвращает falseВ And Оператор отношения "Р". Возвращает true, если РѕР±Р° операнда равны true. Р’ противном случае возвращает falseВУсловные операторы
В VBScript поддерживается условный оператор If…Then…Else. Общий вид этого оператора:
If условие_1 Then
 выражение_1
[ElseIf условие_2 Then
 выражение_2]
…
[Else
 выражение_3]
End If
При выполнении оператора If…Then…Else оценивается логическое условие (условие_1), стоящее после ключевого слова If. Если в результате оценки условия получилось значение true, то выполняется выражение_1 и происходит выход из оператора. В противном случае начинают по очереди проверяться условия, стоящие после ключевых слов ElseIf; если одно из этих условий истинно, то выполняется соответствующее выражение, после чего управление передается следующему после End If оператору. Если ни одно из проверяемых условий не является истинным, выполняется выражение, стоящее после ключевого слова Else. Пример:
If (theCount > 1) Then
 theMoments = "До взрыва осталось " & theCount & " сек!"
Else
 theMoments = "Осталась секунда!"
End If
Другим оператором, позволяющим производить выбор из нескольких вариантов, является Select Case. Синтаксис этого оператора:
Select Case выражение
Case значение_1
 выражение
[Case значение_2
 выражение_2]
…
[Case Else
 выражение_3]
End Select
Здесь сначала вычисляется значение выражения, которое затем по очереди сравнивается со значениями, стоящими после ключевых слов Case. В случае совпадения выполняются операторы в соответствующем блоке Case. Если же ни одно из имеющихся значений не совпадает со значением выражения, то выполняются операторы, стоящие после слова Case Else. Пример использования оператора Select Case:
Select Case MyVar
Case vbRed
 Color = "Красный"
Case vbGreen
 Color = "Зеленый"
Case vbBlue
В Color = "РЎРёРЅРёР№"
Case Else
 Color = "Цвет непонятен"
End Select
Операторы цикловВ
В VBScript поддерживаются несколько типов циклов: цикл For…Next, цикл Do…Loop, цикл While…Wend, цикл For Each…Next. Рассмотрим каждый из них подробнее.
Цикл For…Next
В общем случае оператор цикла For…Next записывается следующим образом:
For counter=start РўРѕ end [Step step]
 тело цикла
В [Exit For]
 тело цикла
Next
Параметр counter здесь является счетчиком цикла; start — начальное значение этого счетчика; end — конечное значение; step — шаг приращения счетчика. Если ключевое слово Step не указано, то шаг приращения берется равным единице. Выход из цикла For…Next происходит, когда значение счетчика counter становится больше, чем значение параметра end. Выражение Exit For используется для безусловного выхода из цикла.
Пример использования цикла for приведен в листинге П2.1.
Листинг П2.1. Пример использования цикла For…NextDim howFar 'Верхний предел для счетчика цикла