ASP中Null,Empty,Nothing的区别分析

本文介绍在ASP中,NULL,Empty,Nothing这几种空值的来源和判断方法。

Dim   A  
Dim   B   As   String  
Dim   C   As   Integer  
Dim   D   As   Object  


A  等于 Empty,因为尚未初始化的「不定型变量」都等于 Empty。但如果检测 A = "" 或 A = 0,也都可以得到True 值。  
B  等于   "", 因为尚未初始化的非固定长度「字串」都等于 ""。   但请注意B <> Null。  
C  等于   0,  这个还有问题吗?  
D  等于   Nothing,   尚未设定有物件的「物件变量」都等于 Nothing,但请不要使用D = Nothing, 而要使用D Is Nothing 来判断D 是否等于Nothing,因为判断是否相等的符号是Is不是=。  

最令人迷惑的地方是 Null 这个保留字,请看以下语句:  
Print   X   =   Null  
Print   X   <>  Null  
结果都是输出 Null(不是True 也不是False),这是因为任何一个运算式只要含有Null,则该运算式就等于Null,实际上想要判断某一数据是否为Null  绝对不能使用:  
If X = Null Then  ' 永远都会得到Null  
而要使用:  
If IsNull(X) Then  

哪一种数据会等于 Null呢?除了含有Null运算式之外,就属没有输入任何数据的「数据字段」(在数据库中)会等于Null。即大家可以理解为Null就是数据里面读出来的空字段。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/2018.html