Request.QueryString/Form 返回值類型 與 CInt()

一直覺得 Request.QueryString/Form 找不到指定的變量時會返回空字符串。數組

其實否則,Request.QueryString/Form 找不到指定的變量時,返回值的類型是 Empty。函數

Empty 是 Variant 的子類型。spa

CInt() 不接受空字符串,可是卻能夠接受 Empty 類型。orm

下面是關於 VBScript 數據類型的一些介紹。
對象

VBScript 只有一種數據類型,稱爲 Variant
ip

Variant 是一種特殊的數據類型,根據使用的方式,它能夠包含不一樣類別的信息。ci

下表顯示 Variant 包含的數據子類型:字符串

子類型 描述
Empty 未初始化的 Variant。對於數值變量,值爲 0;對於字符串變量,值爲零長度字符串 ("")。
Null 不包含任何有效數據的 Variant
Boolean 包含 TrueFalse
Byte 包含 0 到 255 之間的整數。
Integer 包含 -32,768 到 32,767 之間的整數。
Currency -922,337,203,685,477.5808 到 922,337,203,685,477.5807。
Long 包含 -2,147,483,648 到 2,147,483,647 之間的整數。
Single 包含單精度浮點數,負數範圍從 -3.402823E38 到 -1.401298E-45,正數範圍從 1.401298E-45 到 3.402823E38。
Double 包含雙精度浮點數,負數範圍從 -1.79769313486232E308 到 -4.94065645841247E-324,正數範圍從 4.94065645841247E-324 到 1.79769313486232E308。
Date (Time) 包含表示日期的數字,日期範圍從公元 100 年 1 月 1 日到公元 9999 年 12 月 31 日。
String 包含變長字符串,最大長度可爲 20 億個字符。
Object 包含對象。
Error 包含錯誤號。

可以使用 VarType 函數返回數據的 Variant 子類型。io

VarType 函數返回下列值:table

常數 描述
vbEmpty 0 Empty(未初始化)
vbNull 1 Null(無有效數據)
vbInteger 2 整數
vbLong 3 長整數
vbSingle 4 單精度浮點數
vbDouble 5 雙精度浮點數
vbCurrency 6 貨幣
vbDate 7 日期
vbString 8 字符串
vbObject 9 Automation 對象
vbError 10 錯誤
vbBoolean 11 Boolean
vbVariant 12 Variant(只和變量數組一塊兒使用)
vbDataObject 13 數據訪問對象
vbByte 17 字節
vbArray 8192 數組

VarType 函數從不經過本身返回 Array 的值。它老是要添加一些其餘值來指示一個具體類型的數組。當 Variant 的值被添加到 Array 的值中以代表 VarType 函數的參數是一個數組時,它才被返回。例如,對一個整數數組的返回值是 2 + 8192 的計算結果,或 8194。若是一個對象有默認屬性,則 VarType(object) 返回對象默認屬性的類型。

相關文章
相關標籤/搜索