VBScript中 Operators:逻辑(AND、OR)运算、比较示例

VBScript中 Opera职权范围

An Operator 通过值或变量来执行某些任务。 Opera变量在编程中非常重要,因为没有变量你就无法给变量赋值或者执行任务。

假设,您想计算两个变量 a 和 b 的总和,并将结果保存在另一个变量 c 中。

c = a + b

这里,a、b 和 c 是操作数,+ 和 = 是运算符。

VBScript 中主要有三种运算符:算术、比较和逻辑 Opera躯干。

VBScript 算术 Opera职权范围

VBS 算术运算符,顾名思义,用于算术计算。

不同的算术运算符

  • +(加法)
  • –(减法)
  • *(乘法)
  • / (分配)
  • %(模量)
  • ^(指数)
  • &(连接)

您可能熟悉前四个算术运算符,因为我们通常使用它们。

模数运算符用于求除法后的余数。例如,10%3 等于 1。

指数运算符相当于数学中的“幂”。例如,2^3 等于 8。

连接运算符用于连接两个字符串值。

例如, “Hello” & ” John” 将返回“Hello John”。

VBScript 比较 Opera职权范围

比较运算符用于比较两个值。

不同的比较运算符有 == 、 <> 、 < 、 > 、 <= 和 >=。假设有两个变量 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 逻辑运算符:AND、OR

逻辑运算符用于进行逻辑运算。

一些逻辑运算符是 AND、OR、NOT 和 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 逻辑 Opera职权范围

什么是 Operator 优先权?

当表达式中出现多个运算符时,每个部分都按预定顺序进行计算,称为运算符优先级。当表达式包含来自多个类别的运算符时,

  • 首先评估算术运算符
  • 接下来评估比较运算符
  • 最后评估逻辑运算符

比较运算符都具有相同的优先级;也就是说,它们按照从左到右出现的顺序进行评估。

算术运算符按以下顺序进行评估:

  • 乘法
  • 系数
  • 加减
  • 最后连接。

逻辑运算符按以下顺序进行评估:

  • 不是
  • AND
  • OR
  • 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。现在您得到的值为 a 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) 将文件保存为precedence.html并保存到您喜欢的位置。现在在Internet Explorer中打开该文件,您的屏幕将如下所示。

VBScript中 Opera优先权

步骤3) 将表达式 a 改为 (5-2)*2/5^3 并保存文件。现在检查输出,你的输出将如下所示:

VBScript中 Opera优先权

VBScript 常量

在 VBS 中编码时,有时可能需要使用常量。常量是一个有意义的名称,用于替换永远不会改变的数字或字符串。例如,假设您想在代码中使用常量 ?。很明显,常量 ? 的值不会改变。因此,您可以创建一个名为“pi”的常量并在任何需要的地方使用它。您需要使用关键字“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 常量

总结

  • Opera用来分配价值 变量 或执行不同类型的任务。主要有三种类型的运算符 VBScript中:算术、比较和逻辑 Opera躯干。
  • Opera运算符优先级是指当表达式中出现多个运算时,运算符的正常求值顺序。可以使用括号来覆盖运算符优先级。
  • 常量是一个有意义的名称,它代替永远不会改变的数字或字符串。