本文介紹在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就是資料裡面讀出來的空白欄位。