使用 Empty vs "" 在 VBscript 中定义或测试变量
Using Empty vs "" to define or test a variable in VBscript
将变量声明为空白时(例如在循环之前),有时会以“”或 Empty 的形式完成。此外,在检查值时,它有时会与“(Not IsEmpty(variable))”和 "variable <> Empty" 一起使用。一个比另一个更好用吗?如果使用不当会导致任何问题吗?
Ex1:
- 文件名日期 = 空
- 文件名日期 = ""
Ex2:
- If (Not IsEmpty(fileNameDate)) Then
- If fileNameDate <> Empty Then
- 如果文件名日期 <> "" 那么
谢谢!
------------更新------------
请注意,我的问题不是询问 Null、Empty 和 Nothing 之间的区别。我只是专注于 "Empty" 部分以及它是否与编写 "" 相同。大多数情况下,我在交换两者时收到了类似的结果,但我不知道这是否只是我使用的示例。例如,以下内容让我有些困惑。
我的代码:
Dim x, y, z
'Option1 (Do not set x to anything)
'Option2
'x = Empty
'Option3
'x = ""
If x = "" Then
'Action1
End if
If x = Empty Then
'Action2
End if
If IsEmpty(x) Then
'Action3
End if
- 如果我选择选项 1 并且不定义 "x",所有三个操作都会发生。
- 如果我选择 Option2 并设置 x = Empty,所有三个操作也会发生
- 但是如果我使用 Option3 并设置 x = "",则只会发生 Action1 和 Action2。
为什么?
一些注意事项:
fileNameDate = Empty ' The same as just declaring Dim fileNameDate
IsEmpty(fileNameDate) ' = True
不同于:
fileNameDate = ""
IsEmpty(fileNameDate) ' = False
我认为函数 IsEmpty()
命名错误,因为它检查变量是否已经 初始化 ,而不是它是否实际上 空 [=21] =].
将变量声明为空白时(例如在循环之前),有时会以“”或 Empty 的形式完成。此外,在检查值时,它有时会与“(Not IsEmpty(variable))”和 "variable <> Empty" 一起使用。一个比另一个更好用吗?如果使用不当会导致任何问题吗?
Ex1:
- 文件名日期 = 空
- 文件名日期 = ""
Ex2:
- If (Not IsEmpty(fileNameDate)) Then
- If fileNameDate <> Empty Then
- 如果文件名日期 <> "" 那么
谢谢!
------------更新------------
请注意,我的问题不是询问 Null、Empty 和 Nothing 之间的区别。我只是专注于 "Empty" 部分以及它是否与编写 "" 相同。大多数情况下,我在交换两者时收到了类似的结果,但我不知道这是否只是我使用的示例。例如,以下内容让我有些困惑。
我的代码:
Dim x, y, z
'Option1 (Do not set x to anything)
'Option2
'x = Empty
'Option3
'x = ""
If x = "" Then
'Action1
End if
If x = Empty Then
'Action2
End if
If IsEmpty(x) Then
'Action3
End if
- 如果我选择选项 1 并且不定义 "x",所有三个操作都会发生。
- 如果我选择 Option2 并设置 x = Empty,所有三个操作也会发生
- 但是如果我使用 Option3 并设置 x = "",则只会发生 Action1 和 Action2。
为什么?
一些注意事项:
fileNameDate = Empty ' The same as just declaring Dim fileNameDate
IsEmpty(fileNameDate) ' = True
不同于:
fileNameDate = ""
IsEmpty(fileNameDate) ' = False
我认为函数 IsEmpty()
命名错误,因为它检查变量是否已经 初始化 ,而不是它是否实际上 空 [=21] =].