我想根据字段的类型判断其到底有没有值,于是写了下面的代码,先把rs生成一个二维数组,然后赋值给var2,可是总报错说类型不匹配,把(var2="") or (var2=0)去了就正常了,可这没错呀,奇怪,难道这又证明了asp的破?
if isnull(var2) or (var2="") or (var2=0) then
v2_have=false
else
v2_have=true
end if
---------------------------------------------------------------
vbscript中的or不象c语言中一样是短路逻辑判断,即使第一个表达式是真的,or后面的表达式还是会判断,var2和字符串和数字类型不一致当然会报错。vb.net就有短路逻辑判断操作符了。
---------------------------------------------------------------
对, inelm(车魔) 说的对,
trim是去掉字符串两端的空格,
你要先判断是不是空的,然后才能比较,
所以if isnull(var2) or (var2="") or (var2=0) then 不能放在一块,应该这样:
if not isnull(var2) then
if (var2="") or (var2=0) then
...
---------------------------------------------------------------
同意楼上
isnull(var2)和不能一起比较的
var2="") or (var2=0)