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