创建子例程

发表于:2007-06-30来源:作者:点击数: 标签:
创建子例程 如果你发现你需要在脚本中的多处地方执行同样的一组语句,可以使用子例程。一个子例程可以包含 VB script语句的任何集合。你可以调用同一个子例程任意多次。这里有一个例子: HTML HEADTITLESubroutine Example/TITLE/HEAD BODY % SUB ShowSenten

创建子例程

如果你发现你需要在脚本中的多处地方执行同样的一组语句,可以使用子例程。一个子例程可以包含VBscript语句的任何集合。你可以调用同一个子例程任意多次。这里有一个例子:

<HTML>

<HEAD><TITLE>Subroutine Example</TITLE></HEAD>

<BODY>

<%

SUB ShowSentence

%>

This sentence was created by a subroutine.

<%

END SUB

ShowSentence

ShowSentence

ShowSentence

%>

</BODY>

</HTML>

如果在浏览器中显示这个文件,句子This sentence was created by a subroutine.将会被显示三次。子例程ShowSentence用于显示这个句子,通过该子例程的名字,该子例程在主脚本中被调用了三次。

子例程可以接受参数。例如,你可以创建一个子例程,根据传递给它的参数的不同而显示不同的句子。这里有一个例子:

<%

SUB ShowError(theError)

%>

<TITLE>Login Invalid</TITLE>

<BR>The login information you provided was invalid:

<BR><%=theError%>

<%

END SUB

IF user_name<>”Andrew Jones” THEN ShowError “Bad user name.”

IF user_password<>”secret password” THEN ShowError “Bad password”

%>

在这个例子中,根据传递给它的字符串的不同,子例程显示不同的错误信息。例如,如果变量user_name的值不等于”Andrew Jones”,则用字符串”Bad user name”调用该子例程。如果变量user_password的值不等于”secret password”,则字符串”Bad password”被传递给该子例程。

你可以一次给一个子例程传递多个参数。要做到这一点,只要简单地用逗号把参数隔开即可,如下例所示:

<TITLE>Subroutine Example</TITLE>

<%

Sub MySub(myvar1,myvar2)

mystring=myvar1&myvar2

%>

<%=mystring%>

<%

END SUB

MySub “The house “,”is on a hill.”

%>

如果在一个子例程中声明或第一次使用一个变量,则该变量只在这个子例程内存在。这意味着如果你在子例程内给该变量分配了任何值,你将不能在该子例程外读取到这些值。考虑如下的例子:

<TITLE>Subroutine Example</TITLE>

<%

SUB AssignVar

myvar=”Hello There!”

END SUB

AssignVar

%>

<%=myvar%>

在这个例子中,在子例程内给变量myvar分配了值”Hello There!”。在该子例程的范围之外,试图显示这个变量的值,但什么也不能显示。

另一方面,如果在一个子例程的外部声明或第一次使用了一个变量(在脚本的层次),该变量可以在子例程之内被访问。考虑如下的例子:

<TITLE>Subroutine Example</TITLE>

<%

SUB ShowVar

%>

<%=myvar%>

<%

END SUB

myvar=”Hello There!”

ShowVar

%>

在这个例子中,在主脚本中给变量myvar分配了值”Hello There!”。当子例程ShowVar被调用时,该变量的值被显示。

原文转自:http://www.ltesting.net