我正在支持/增强用 Classic ASP/VBScript 编写的 Web 应用程序。自从我每天使用这两种容量以来,已经有大约 10 年了。我刚刚遇到了一个我认为是“陷阱”的问题,并且想知道其他人是否有类似的事情我应该学会注意。
我的问题:
我必须将 SQL 表中的列从浮点数转换为十进制数。事实证明,十进制不是 vbscript 中真正支持(或支持良好)的类型。所以下面的代码:
Dim var1, var2
var1 = rs("DecimalField1").Value
var2 = rs("DecimalField2").Value
If (var1 <> var2) Then
'Do Something'
End If
会在行上出现类型不匹配错误:
If (var1 <> var2) Then
经过大量搜索,我发现:
var1 = CDBL(rs("DecimalField1").Value)
var2 = CDBL(rs("DecimalField2").Value)
解决了这个问题。但这似乎不是一件显而易见的事情,我花了一段时间才弄清楚为什么我在那条线上得到了类型不匹配。
所以我对大家的问题是,你还遇到过哪些类似的小怪癖?ASP/vbscript 中有哪些您认为是我应该注意的“陷阱”的东西?