本文介紹在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, 尚未設(shè)定有物件的「物件變量」都等于 Nothing,但請不要使用D = Nothing, 而要使用D Is Nothing 來判斷D 是否等于Nothing,因為判斷是否相等的符號是Is不是=。
最令人迷惑的地方是 Null 這個保留字,請看以下語句:
Print X = Null
Print X > Null
結(jié)果都是輸出 Null(不是True 也不是False),這是因為任何一個運算式只要含有Null,則該運算式就等于Null,實際上想要判斷某一數(shù)據(jù)是否為Null 絕對不能使用:
If X = Null Then ' 永遠(yuǎn)都會得到Null
而要使用:
If IsNull(X) Then
哪一種數(shù)據(jù)會等于 Null呢?除了含有Null運算式之外,就屬沒有輸入任何數(shù)據(jù)的「數(shù)據(jù)字段」(在數(shù)據(jù)庫中)會等于Null。即大家可以理解為Null就是數(shù)據(jù)里面讀出來的空字段。
您可能感興趣的文章:- asp.net中DBNull.Value,null,String.Empty區(qū)別淺析
- ASP 空字符串、IsNull、IsEmpty區(qū)別分析
- asp.net String.Empty NULL 不同之處
- asp.net String.IsNullOrEmpty 方法
- vbs中Empty和Null的區(qū)別