脚本编写技巧

---摘自《CNET》
在 VBScript 中，您可以不必像在其他脚本语言中那样声明变量，或者是明确定义变量的类型。您使用过一次变量，这个变量就存在了。然而，这种特性就使您的代码对输入错误毫无防范。如果您在代码中的某个地方输错一个变量名，那么就创建了一个新的变量。这样，您的脚本就可能不能正常运行，而你自己可能还没有意识到这一点。
最好养成使用变量之前先对其进行说明。说明方法很简单，只要输入 Dim variableName 就可以：
<% Dim IntUserID%>
IntUserID 现在就可以使用了。另一种安全的方法是使用 Option Explicit。如果您打开了 Option Explicit，那么无论何时使用未定义的变量，您都将接收到一条错误消息。这听起来可能让人感到厌烦，但是真正遇到 BUG 时会让你省不少力气，因为不然的话你可能要费好多事。
要使用 Option Explicit，只需在脚本的第一行输入下列内容：
<% Option Explicit %>
如果您想了解忘记声明变量时会发生什么情况，可以运行下面这一小段代码：
<% Option Explicit %>
<% strName = Request.Form("Name") %>
由于未定义 strName 变量 (Dim strName)，您将看到一条类似下面内容的错误消息：
Microsoft VBScript runtime error '800a01f4'
Variable is undefined: 'strName'
/e/oe-test.asp, line 10
使用Len函数 通过使用 Len (字符串)函数，您可以确定文本的字符串长度。
<%
IntString = "This is a Simple Sentence."
IntStringLength = Len(IntString)
Response.Write "There are " & IntStringLength & " characters (including spaces) in the sentence shown below:"
Response.Write "" & IntString & ""
%>
如果您不知道 Len 何时能够派上用场，那么就想一想您要求用户在表格输入邮政编码或者选择三位PIN的时候吧。利用 Len 函数，您就可以验证用户输入了足够的数字。
使用Trim 截取字符串可能是你早就想用的东西。字符串通常在其开始和结束处有一个多余的空格，而如果您没有截取它，那么您可能就要担心变量是不是能够正确匹配了：
<% strName = Request.Form("Name")
strCheckName = "Amy Cowen"
If strName = strCheckName THEN
Response.Write "Success! The names matched."
Else
Response.Write "Sorry. The names do not match."
End if
%>
如果 strName 的值是“Amy Cowen”（因为我就是这样输入到表框中的），那么尽管两个变量看起来都含有相同的信息，但是该测试仍将失败，原因是"Amy Cowen" 不等于" Amy Cowen"。
同样，如果您正向 URL 中输入 Name 字段：
<% Response.Write " & objRec("Name") & "">Your Site" %>
如果Name 字段中的任一个记录有多余的空格，测试将很快出现问题。
您可以截取整个字符串，也可以对字符串的左边或右边运行下面的进程：
<% strComments = Request.Form("Comments")
strComments = Trim(strComments)
%>
假设用户已输入下列内容：
" 我在安装下载来的软件时遇到了问题。 " (所显示的引号只不过是让您看到空格。)
上面显示的语句将被截取多余的空格，变为如下语句：
"我在安装下载来的软件时遇到了问题。"
或者，我们也可以再返回到" Amy Cowen"示例中，如果在脚本中加入下列语句，字符串将完全匹配：
strName = Trim(strName)
要截取右边的空格，应使用 Rtrim(string)。要截取左边的空格，应使用 Ltrim(string)。
转换
在刚开始学习使用类似 VBScript 之类的语言时，非常容易犯的一个错误就是将 integer (512) 与 string (512) 相比较。如果您没有意识到此 512 非彼 512，那么您可能要花费一段时间来查明给定脚本不能运行的原因。
设想这样一个情形：您正将文件的 ID (intUserID) 传向 ASP 脚本。利用 Request.QueryString，您可以确定用户要编辑的文件的 ID。您需要从数据库中检索该记录的信息，并将它写到屏幕上。数据库中的 ID 很可能是整数——尤其是在您对该字段使用了 AutoNumber 功能时。但是实际上，根据您对变量的设置情况，传送的 ID 却很可能是个字符串。因此，除非您将这两种类型转换为同一类型，否则它们永远不会匹配。
将传送的变量转换为整数是很容易做到的，而且可以避免以后的麻烦。语句格式很简单：
<%
dim intUserID intUserID = Request.QueryString("userID")
intUserID = CInt(intUserID)
' intUserID is now an integer.
%>
您还可以给 ASP 代码加注释和使用 include 函数。