ASP基础

关注公众号 jb51net

关闭
首页 > 网络编程 > ASP编程 > ASP基础 > 空值测试判断

asp 空值测试判断函数

投稿:mdxy-dxy

asp 空值测试判断函数,学习asp的朋友可以参考下。

被asp判断空值闪了一下腰

从表单提交过来的值,

score=request.Form("score")    //--score为分数
if  Trim(request("score"))  = ""  then   //--如果提交过来的值为空,则赋默认值0;  
     score =0
end if

 写了很多种写法,但是都不起作用:

例如:

1. Trim(request("score"))  == ""   //--点评:错在多了个=号,在ASP的VBS脚本中,相等不是两个等号;

2. ISEMPTY(request("score"))     //--点评:看了别人的说法,只是这么去写,测试了,行不通;

3. ISNull(request("score"))     //--点评:看了别人的说法,只是这么去写,测试了,行不通;

4. request("score")=NULL     //--点评:看了别人的说法,只是这么去写,测试了,行不通;

5. request("score")== NULL     //--点评:看了别人的说法,只是这么去写,测试了,行不通;

总结如下:

在数据库中读取出来的时候,才用ISNULL函数来进行判断(待测试);

从表单提交过来的值,是以字符串的形式提交过来,(80%确定)

isnull 说明指针为空,指针指到一个无效的位置,即对象不存在,
isempty 说明指针指向一个有效位置,但是值为空

1、空字符串

例:

a)Dim strTmp
response.write(strTmp="") ' 返回true
b)response.write(str="") ' 返回 true
c)Dim strTmp
strTmp=""
response.write(strTmp="") ' 返回 true
没有赋值的变量ASP可以认为是空字符串或叫做零长度字符串。

2、IsEmpty()

如果变量未初始化或显式地设置为 Empty,则函数 IsEmpty 返回 True;
否则函数返回 False。如果 expression 包含一个以上的变量,总返回 False。
例:

a)Dim strTmp
Response.Write(IsEmpty(strTmp)) ' 返回 True

b) Response.Write(IsEmpty(str))' 返回 True
c)Dim strTmp
strTmp = Null
Response.Write(IsEmpty(strTmp)) ' 返回 Flase
d)Dim strTmp
strTmp = Empty

 Response.Write(IsEmpty(strTmp)) ' 返回 True
e)Dim strTmp
strTmp = ""
Response.Write(IsEmpty(strTmp)) ' 返回 Flase

没有赋值的变量也可以认为是Empty 即空值

可以用isdate,isarray,isnumeric替代isempty进行测试a),b)两个例子,isnumeric也是返回 True,isdate,isarray返回 False

3.empty补充

dim a,b,c,d,e,f,
a=0
b=0.0
c=""
d=false
e=empty
response.write(x=empty)  'x请用a,b,c,d,e,f其中一个代替,返回都为true
response.write(isempty(x))  'x请用a,b,c,d,e,f其中一个代替,除了e,f,其它返回都为false

4、IsNull()

Null 值指出变量不包含有效数据。Null 与 Empty 不同,后者指出变量未经初始化。Null 与零长度字符串 ("") 也不同,零长度字符串往往指的是空串。
使用 IsNull 函数可以判断表达式是否包含 Null 值。

例:
a)Dim strTmp
Response.Write(IsNull(strTmp)) ' 返回 False
b)Response.Write(IsNull(strTmp)) ' 返回 False 注意这里strTmp是一个未经声明的变量
c)Dim strTmp
strTmp = Null
Response.Write(IsNull(strTmp)) ' 返回 True
d)Dim strTmp
strTmp = Empty
Response.Write(IsNull(strTmp)) ' 返回 False

'函数:空值测试
Function inull(Val)
Dim tmp
tmp = False
If IsNull(Val) Then
tmp = True
ElseIf IsEmpty(Val) Then
tmp = True
ElseIf Trim(Val) = "" Then
tmp = True
End If
inull = tmp
End Function

测试变量是否为空值,空值的含义包括:变量不存在/为空,对象为Nothing,0,空数组,字符串为空

Function IsBlank(ByRef Var)
IsBlank = False
Select Case True
Case IsObject(Var)
If Var Is Nothing Then IsBlank = True
Case IsEmpty(Var), IsNull(Var)
IsBlank = True
Case IsArray(Var)
If UBound(Var) = 0 Then IsBlank = True
Case IsNumeric(Var)
If (Var = 0) Then IsBlank = True
Case Else
If Trim(Var) = "" Then IsBlank = True
End Select
End Function

到此这篇关于asp 空值测试判断函数的文章就介绍到这了,更多相关空值测试判断内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

阅读全文