Учебники

3) Оператор, Старшинство, Константы

Операторы VBScript

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

Предположим, вы хотите вычислить сумму двух переменных a и b и сохранить результат в другой переменной c.

c = a + b

Здесь a, b и c — операнды, а + и = — операторы.

В VBScript есть в основном три вида операторов: арифметические, сравнительные и логические операторы.

VBScript Арифметические операторы

Арифметические операторы VBS, как видно из названия, используются для арифметических вычислений.

Различные арифметические операторы

  • + (дополнение)
  • — (вычитание)
  • * (умножение)
  • / (деление)
  • % (модуль)
  • ^ (возведение в степень)
  • & (объединение)

Возможно, вы знакомы с первыми четырьмя арифметическими операторами, поскольку мы их часто используем.

Оператор модуля используется, чтобы найти остаток после деления. Например, 10% 3 равно 1.

Оператор возведения в степень эквивалентен «силе» в математике. Например, 2 ^ 3 равно 8.

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

Например, «Привет» и «Джон» вернет «Привет Джон».

Операторы сравнения VBScript

Операторы сравнения используются для сравнения двух значений.

Различные операторы сравнения: ==, <>, <,>, <= и> =. Предположим, у вас есть две переменные a и b со значениями 5 и 9 соответственно, тогда результаты следующего сравнения будут такими:

a==b  will return false.
a<>b will return true.
a<b will return true.
a>b will return false.
a<=b will return true.
a>=b will return false.

VBScript Логические операторы: И, ИЛИ

Логические операторы используются для логических операций.

Некоторые из логических операторов — И, ИЛИ, НЕ и XOR.

Предположим, у вас есть две переменные x и y со значениями true и false соответственно, тогда результаты следующих логических операций будут такими:

x AND y  will return false.
x OR y will return true.
NOT(x OR y) will return false.	
x XOR y will return true.

Пример кода

Шаг 1) Скопируйте следующий код в редактор

<html>
<head>

<script type="text/vbscript">

Dim num1,num2
num1=20
num2=3

document.write(num1 & " + " & num2 & " = " & num1+num2 & "<br />")
document.write(num1 & " - " & num2 & " = " & num1-num2 & "<br />")
document.write(num1 & " * " & num2 & " = " & num1*num2 & "<br />")
document.write(num1 & " / " & num2 & " = " & num1/num2 & "<br />")
document.write(num1 & " ^ " & num2 & " = " & num1^num2 & "<br />")
document.write(num1 & " Mod " & num2 & " = " & num1 Mod num2 & "<br />")
document.write("John" & " & " & "Smith" & " = "& "John" & " Smith" & "<br />")

Dim num3,num4
num3=7
num4=13
If (num3=num4) Then
document.write(num3 & " == " & num4 & " returns true." & "<br />")
Else
document.write(num3 & " == " & num4 & " returns false." & "<br />")

End If

If (num3<>num4) Then
document.write(num3 & " <> " & num4 & " returns true." & "<br />")
Else
document.write(num3 & " == " & num4 & " returns false." & "<br />")
End If

If (num3<num4) Then
document.write(num3 & " < " & num4 & " returns true." & "<br />")
Else
document.write(num3 & " < " & num4 & " returns false." & "<br />")
End If

If (num3>num4) Then
document.write(num3 & " > " & num4 & " returns true." & "<br />")
Else
document.write(num3 & " > " & num4 & " returns false." & "<br />")
End If

If (num3<=num4) Then
document.write(num3 & " <= " & num4 & " returns true." & "<br />")
Else
document.write(num3 & " <= " & num4 & " returns false." & "<br />")
End If

If (num3>=num4) Then
document.write(num3 & " >= " & num4 & " returns true." & "<br />")
Else
document.write(num3 & " >= " & num4 & " returns false." & "<br />")
End If

Dim bool1,bool2
bool1=false
bool2=true

If (bool1 AND bool2) Then
document.write(bool1 & " AND " & bool2 & " returns true." & "<br />")
Else
document.write(bool1 & " AND " & bool2 & " returns false." & "<br />")
End If

If (bool1 OR bool2) Then
document.write(bool1 & " OR " & bool2 & " returns true." & "<br />")
Else
document.write(bool1 & " OR " & bool2 & " returns false." & "<br />")
End If

If NOT(bool1 OR bool2) Then
document.write("NOT (" & bool1 & " OR " & bool2 & " ) returns true." & "<br />")
Else
document.write("NOT (" & bool1 & " OR " & bool2 & " ) returns false." & "<br />")
End If

If (bool1 XOR bool2) Then
document.write(bool1 & " XOR " & bool2 & " returns true." & "<br />")
Else
document.write(bool1 & " XOR " & bool2 & " returns false." & "<br />")
End If

</script>

</head>
<body>

</body>
</html>

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

Операторы, приоритет оператора и константы в VBScript

Что такое приоритет оператора?

Когда в выражении встречается несколько операторов, каждая часть оценивается в предопределенном порядке, называемом приоритетом оператора Когда выражения содержат операторы из более чем одной категории,

  • арифметические операторы оцениваются первыми
  • операторы сравнения оцениваются следующим
  • логические операторы оцениваются последними

Все операторы сравнения имеют одинаковый приоритет; то есть они оцениваются в порядке слева направо, в котором они появляются.

Арифметические операторы оцениваются в следующем порядке:

  • экспоненцирование
  • умножение
  • деление
  • модуль
  • сложение и вычитание
  • и, наконец, объединение.

Логические операторы оцениваются в следующем порядке:

  • НЕ
  • А ТАКЖЕ
  • ИЛИ
  • XOR.

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

Например, если вы попытаетесь вычислить выражение a = 5-2 * 2/5 ^ 3, что вы ожидаете в результате? Результат будет 4,968. Как? Сначала возлагается возведение в степень, затем идет умножение и деление и, наконец, вычитание. Таким образом, вышеприведенное выражение рассчитывается так: 5-2 * 2 / (5 ^ 3) -> 5- (2 * 2) / 125 -> 5- (4/125) -> 5-.032 — -> 4.968.

Предположим, вы хотите сначала вычислить 5-2, а затем записать выражение как a = (5-2) * 2/5 ^ 3. Теперь вы получаете значение как 3 * 2/5 ^ 3 -> 3 * 2/125 -> 6/125 -> 0,048. Вы можете попробовать приведенный ниже код.

Пример кода

Шаг 1) Скопируйте следующий код в редактор

<html>
<head>

<script type="text/vbscript">

Dim a
a  = 5-2*2/5^3
document.write(a)
</script>

</head>
<body>

</body>
</html>

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

Операторы, приоритет оператора и константы в VBScript

Шаг 3) Измените выражение a на (5-2) * 2/5 ^ 3 и сохраните файл. Теперь проверьте вывод, и ваш вывод будет таким:

Операторы, приоритет оператора и константы в VBScript

Константы VBScript

При кодировании в VBS вам, возможно, придется иногда использовать константы. Константа — это осмысленное имя, которое заменяет число или строку, которые никогда не изменятся. Например, предположим, вы хотите использовать константу? в вашем коде. Очевидно, что значение константы? не изменится. Таким образом, вы можете создать константу с именем «пи» и использовать ее где угодно. Вам нужно использовать ключевое слово «const», чтобы объявить константу. Например, вы можете объявить константу с именем pi и присвоить значение? к этому так:

const pi = 3.14

После объявления константы, если вы попытаетесь изменить ее значение, вы получите ошибку.

При именовании констант вы должны быть осторожны, чтобы не использовать предопределенные константы VBScript. Лучшая профилактическая мера — избегать имен, начинающихся с vb, потому что все предопределенные константы VBScript начинаются с vb. Некоторые примеры: vbRed, vbSunday, vbArray и так далее. Вы можете использовать эти предопределенные константы VBScript в своем коде по своему усмотрению.

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

Пример кода

<html>
<head>

<script type="text/vbscript">
   Dim intRadius
   intRadius = 20
   const pi=3.14
   area = pi*intRadius^2
   document.write(area)
</script>

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

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

Операторы, приоритет оператора и константы в VBScript

Резюме

  • Операторы используются для назначения значений переменным или выполнения различных видов задач. В VBScript есть в основном три вида операторов: арифметические, сравнительные и логические операторы.
  • Приоритет оператора — это порядок, в котором операторы обычно оцениваются, когда в выражении происходит несколько операций. Вы можете использовать скобки, чтобы переопределить приоритет оператора.
  • Константа — это осмысленное имя, которое заменяет число или строку, которые никогда не изменятся.