• VBScript:Empty与Null


    作为弱类型语言(loosely typed language),Variant是VBScript中唯一的数据类型,我们通过Variant的“子类型”来管理变量。记录一下两个比较特殊的子类型:Empty和Null。

    与其他子类型的区别

    当变量的子类型为Empty或Null时,它的值也就是名为Empty或Null的特殊值,这跟其他的子类型有些不同,其他的子类型只是说明变量中值得类型,而不是值本身。

    Empty子类型

    1. Empty等价于“未初始化”,当一个Variant变量被声明后,在往其中放入任何值之前,它就是空的,其子类型是Empty。

       1:  Dim varTest
       2:  MsgBox TypeName(varTest)
     

    2. 一旦给Variant变量赋值,它就不再为空。

    3. 如何将变量变成空的:

       1:  varTest = Empty

    4. 如何检查变量是否为空:

    方法一:

       1:  If varTest = Empty Then
       2:      MsgBox "The variable is empty."
       3:  End If

    方法二:

       1:  If IsEmpty(varTest) Then
       2:      MsgBox "The variable is empty."
       3:  End If

    5. Empty与空字符串比较:

       1:  Dim varTest
       2:  MsgBox varTest
       3:  MsgBox TypeName(varTest)
       4:  varTest = ""
       5:  MsgBox varTest
       6:  MsgBox TypeName(varTest)
    Empty子类型和空字符串从值来看都是空的,但他们的区别是:Empty子类型表示未被初始化,而空字符串已经被初始化为String子类型但被赋值为空。

    Null子类型

    1. Null表示变量中没有合适的值,只有明确地将Null放到变量中,变量才会是Null子类型。Null是个特殊的值,常见于数据库表格中。"null"这个概念反映的不仅仅是缺少值,也意味着当前值是未知的。

    2. 将Null值赋给变量:

       1:  varTest = Null

    3. 如何检查变量是否为Null:

       1:  If IsNull(varTest) Then
       2:      MsgBox "The variable has a Null value."
       3:  End If

    4. 通常从数据库或某些函数获取数据时,要注意Null值。因为Null表示非法的数据,如果您将Null传递给不兼容Null的函数或是用Null做数学计算,那它就会给您带来麻烦。

    以下代码会出错是因为将Null作为了CLng函数的参数:

       1:  Dim varTest
       2:  varTest = Null
       3:  varTest = CLng(varTest)

    此例子会在第三行出错,提示"Invalid Use of Null"。

    5. 将无效数据(Null)与有效数据混在一起时,您最终得到的永远是无效数据。

       1:  Dim varTest
       2:  Dim lngTest
       3:  varTest = Null
       4:  lngTest = 2 + varTest
       5:  MsgBox TypeName(lngTest)

    此例子结果为Null。

  • 相关阅读:
    Struts2 文件上传和下载
    Struts2的验证框架简单吗?
    Struts2防止重复提交
    Struts2的标签三大类是什么?
    Struts2的值栈和OGNL牛逼啊
    Struts2牛逼的拦截器,卧槽这才是最牛的核心!
    转载---C# 递归创建文件夹
    转载---C# 冻结 datagridview的列
    C# base64编码转成图片
    转载---C# 复制文件夹下的(内容)到指定文件夹中
  • 原文地址:https://www.cnblogs.com/ITGirlXiaoXiao/p/3127268.html
Copyright © 2020-2023  润新知