Условные операторы VBScript: IF…Else и ElseIF (пример)

⚡ Умное резюме

Условные операторы VBScript позволяют программе принимать решения и выполнять различный код в зависимости от условия. VBScript предоставляет четыре формы: If…Then, If…Then…Else, If…Then…ElseIf и Select Case, который выбирает один блок из многих на основе совпадающего значения.

  • 🔀 Если…тогда: Блок кода выполняется только тогда, когда условие истинно, и должен завершаться оператором End If.
  • ↔️ Если…Тогда…Иначе: Выбирает один из двух блоков, выполняя один, когда условие выполняется, и другой в противном случае.
  • 🪜 Если…Тогда…ИначеЕсли: Проверяет несколько условий по порядку и запускает первый соответствующий блок.
  • 🇧🇷 Выберите случай: Эта функция сравнивает одну переменную со многими значениями, представляя собой более удобную альтернативу длинным цепочкам операторов ElseIf.
  • ⌨️ входBox Demo: В примере с возрастом программа считывает ввод пользователя и выбирает сообщение на основе введенного значения.
  • ⚠️ Конечные отметки: Если в блоках требуется End If, а в блоках Select Case — End Select, то код не выдает никакого результата.

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

Что такое условное заявление?

Во время программирования вам придется принимать определенные решения и выполнять различные действия на основе этих решений.

В таких ситуациях вы будете использовать условные операторы.

В VBScript существует четыре типа условных операторов: If…Then, If…Then…Else, If…Then…ElseIf и Select Case.

Оператор VBScript If then

Вы будете использовать оператор VBScript If-Then, если хотите выполнить некоторый код, когда определенное условие истинно.

Например, вы хотите выводить сообщение «Добро пожаловать» всякий раз, когда значение переменной loggedIn истинно.

В этом случае вы будете использовать оператор If…Then в VBS.

If loggedIn = true Then
document.write("Welcome")
End If

ПРИМЕЧАНИЕ. Если вы забудете завершить код с помощью End If, вы не получите никакого вывода.

VBScript, если еще оператор

Для выбора одного из двух блоков кода для выполнения вам потребуется использовать оператор If…Then…Else в VBScript.

Например, вы хотите вывести сообщение «Привет, доброе утро», когда значение переменной с именем «время» меньше или равно десяти, и вывести сообщение «Привет, добрый день» в противном случае.

В таком случае вы будете использовать оператор If…Then…Else.

If time <= 10 Then
document.write("Hi, Good Morning")
Else
document.write("Hi, Good Day")
End If

VBScript, если оператор Elseif

Оператор If…Then…ElseIf будет использоваться, если вам нужно выбрать один из множества блоков кода для выполнения.

Например, Если вы хотите изменить вывод в зависимости от дня недели, вам необходимо использовать оператор If…Then…ElseIf.

If today="Sunday" Then
document.write("Today is Sunday")
ElseIf today="Monday" Then
document.write("Today is Monday")
ElseIf today="Tuesday" Then
document.write("Today is Tuesday")
ElseIf today="Wednesday" Then
document.write("Today is Wednesday")
ElseIf today="Thursday" Then
document.write("Today is Thursday")
ElseIf today="Friday" Then
document.write("Today is Friday")
ElseIf today="Saturday" Then
document.write("Today is Saturday")
End If

Оператор случая VBScript SELECT

Подобно оператору If…Then…ElseIf, оператор Case в VBScript также можно использовать, если вам нужно выбрать один из множества блоков кода для выполнения.

Тот же приведенный выше код можно написать следующим образом, используя оператор Select Case.

Select Case today
Case "Sunday"
document.write("Today is Sunday")
Case "Monday"
document.write("Today is Monday")
Case "Tuesday"
document.write("Today is Tuesday")
Case "Wednesday"
document.write("Today is Wednesday")
Case "Thursday"
document.write("Today is Thursday")
Case "Friday"
document.write("Today is Friday")
Case "Saturday"
document.write("Today is Saturday")
End Select

Попробуйте приведенный ниже код, чтобы прояснить концепцию.

Если Иначе Если Пример

Шаг 1) Скопируйте код в ваш редактор

<html>
<head>
<script type="text/vbscript">
Dim age
age = InputBox("Enter your age")
If age<18 Then
document.write("You are too young.")
ElseIf age<45 Then
document.write("You are still young.")
ElseIf age<70 Then
document.write("You are getting older.")
Else
document.write("You are too old.")
End If

</script>

</head>
<body>
</body>
</html>

Шаг 2) Сохраните файл как Condition.html в предпочитаемом вами месте.

Теперь откройте файл в Internet Explorer, и ваш экран будет выглядеть следующим образом с полем с просьбой ввести ваш возраст.

Оператор случая VBScript SELECT

Введите числовое значение, например 22. Вы получите такое сообщение.

Оператор случая VBScript SELECT

Введите разные значения и наблюдайте за результатом.

Часто задаваемые вопросы (FAQ)

Используйте оператор Select Case при сравнении одной переменной со многими фиксированными значениями; он более удобен, чем длинная цепочка операторов ElseIf. Используйте ElseIf, когда условия проверяют разные переменные или диапазоны.

Да. Однострочный оператор If, например, If x=1 Then y=2, не требует использования End If. End If необходим только в том случае, если блок If занимает несколько строк и содержит отдельные операторы.

Нет. В VBScript нет тернарного оператора (?:) и встроенной функции IIf. Используйте полный блок If…Then…Else или напишите небольшую вспомогательную функцию для выбора значения на основе условия.

Да. Искусственный интеллект может преобразовать повторяющуюся структуру If…ElseIf в эквивалентный блок Select Case, улучшая читаемость. Он также может отмечать условия, которые невозможно преобразовать, например, проверки диапазона.

Искусственный интеллект способен обнаруживать отсутствие оператора End If или End Select, неправильные операторы сравнения и недоступные ветви. Он объясняет, почему условие никогда не выполняется, и предлагает решение, уменьшая количество скрытых ошибок, не приводящих к результату.

Подведем итог этой публикации следующим образом: