asp 中判断变量为空的方法及isempty、isnull与空字符串

asp中isempty、isnull与空字符串三者之间的区别

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

`isEmpty()` 和 `isNull()` 是两个用于判断对象是否为空的函数,它们在不同的情况下有不同的具体区别。 `()` 函数用于判断一个对象是否为空。对于 QString 对象,当字符串的长度为0时,即为空字符串时,`isEmpty()` 返回 `true`;否则,返回 `false`。对于其他类型的对象,`isEmpty()` 的具体含义可能会有所不同,需要根据具体对象类型进行判断。 `isNull()` 函数用于判断一个对象是否为 null。对于 QString 对象,`isNull()` 函数始终返回 `false`,因为 QString 类型的对象不能为 null。但是对于其他类型的对象(如 QVariant),`isNull()` 函数可以用于判断对象是否为 null 值。 以下是一个示例,演示了 `isEmpty()` 和 `isNull()` 的使用示例: ```cpp QString str1 = ""; QString str2; QString str3 = "Hello"; QVariant var1; QVariant var2 = QVariant::fromValue<QString>(QString()); if (str1.isEmpty()) { qDebug() << "str1 is empty"; } if (str2.isEmpty()) { qDebug() << "str2 is empty"; } if (str3.isNull()) { qDebug() << "str3 is null"; } if (var1.isNull()) { qDebug() << "var1 is null"; } if (var2.isNull()) { qDebug() << "var2 is null"; } ``` 在这个示例,我们定义了几个 QString 对象和 QVariant 对象,并对它们进行了判断。 通过使用 `isEmpty()` 函数,我们判断了 `str1` 和 `str2` 是否为空字符串,发现 `str1` 是字符串,因此输出 "str1 is empty"。 然后,我们使用 `isNull()` 函数来判断 `str3`、`var1` 和 `var2` 是否为 null。由于 QString 对象不能为 null,因此 `str3.isNull()` 返回 `false`。而对于 QVariant 对象,我们可以使用 `isNull()` 函数来判断其值是否为 null。 所以,`isEmpty()` 和 `isNull()` 两个函数在具体的使用场景和对象类型上有所区别。`isEmpty()` 用于判断是否为空值,而 `isNull()` 用于判断是否为 null 值。需要根据具体的对象类型和使用场景来选择适当的函数进行判断
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值