[设为首页] [加入收藏]    
提 示: 站长书库上线了。 站长招聘上人才沃
站长首页  |  站长下载  |  站长工具
站长素材  |  广告代码  |  网页特效
站长书库  |  站长招聘  |  建站软件
  您当前的位置: 首页 > 网络编程 > ASP教程 >
下一篇:请求对象 Request 上一篇:流程控制
VBscript过程

在VBscript中,过程指的是一组能执行特定功能的代码块,类似于自定义函数的概念,当我们定义了自己的过程后,就可以在脚本中反复调用它们了,对于自定义的过程还可以放在外部的文件夹中,使用#include指令调用它们,也可以将其打包在ActiveX组件中。

一、定义过程

1、定义sub过程

Sub 过程是包含在 Sub 和 End Sub 语句之间的一组 VBScript 语句,执行操作但不返回值。Sub 过程可以使用参数。

定义格式:

Sub Sub_nam(parameter1,parameter2,...)
statement
End Sub

参数:

Sub_nam 为过程名
parameter 为要给过程传递的参数
statement 为过程体即在调用过程时要执行的一些语句

例如

<%
sub mysub(a,b) '定义带有两个参数的sub子程序
sum=a*b
end sub
%>

2、定义function过程

Function 过程是包含在 Function 和 End Function 语句之间的一组VBScript 语句。Function 过程与 Sub 过程类似,但是 Function 过程可以返回值。Function 过程通过函数名返回一个值,这个值是在过程的语句中赋给函数名的。例如:

定义格式:

function func_nam(parameter1,parameter2,...)
statement
func_nam=variables
End Function

参数

func_nam 为过程名
parameter 为要给过程传递的参数
statement 为过程体即在调用过程时要执行的一些语句
variables 为要给函数名赋的值

例如

<%
function my_func(a,b)
dim sum
sum=a*b
my_func=sum '给函数名赋值
end function
%>

二、调用过程

1、调用同一文件的过程:

call my_sub(a,b) '使用call语句调用sub子程序。

my_sub a,b '不使用call语句调用sub子程序,这种方法最常用。

sum=my_func(a,b) '直接引用函数名进行调用。

2、调用外部文件的过程

可以使用html语言的注释标记,利用#include来进行调用;调用时注意路径的设置

如调用同一文件夹下的过程文件p1.asp:

<!--#include file="p1.asp"-->

示例 sl5-1.asp

<%
dim k,h
k=5
h=10
my_sub k,h '调用sub子程序并向其传递参数

sub my_sub(a,b) '定义sub子程序
dim sum '声明局部变量
sum=a*b '程序完成的功能
response.write(sum)
end sub
%>

示例说明:

在定义sub子程序时赋予它的两个参数a,b叫过程的形式参数,在调用sub子程序时向它传递了两个参数k,h叫过程的实际参数,调用过程往往在定义过程之前,但也可以先定义过程然后再调用。

示例 sl5-2.asp

<%
dim a,b,c
a=2
b=3
c=my_func(a,b) '调用函数并将函数返回值保存到变量c中
response.write(c)
'下面定义函数
function my_func(m,n)
dim sum
sum=m+n
my_func=sum '给函数名赋值
end function
%>

示例

(1)定义一个function过程func.asp,在另一个文件中调用这个过程,两个文件放在同一个文件夹中,如果不在同一个文件夹,要正确书写路径。

文件名:func.asp

<%
function my_func(m,n)
dim sum
sum=m*n
my_func=sum
end function
%>

(2)在这个asp文件中调用上面定义的func.asp过程

文件名:sl5-3.asp

<!--#include file="func.asp"-->
<%
dim a,b,c
a=5
b=6
c=my_func(a,b)
response.Write c
%>

示例 sl5-4.asp

<%
c=my_func() '调用函数
function my_func()
dim a,b,c
a="学习asp"
b="学习asp"
c="学习asd"
response.write a=b '返回True
response.write "<br>"
response.write a=c '返回False
response.write "<br>"

response.write StrComp(a,b) '返回0,说明a和b相等
response.write "<br>"
response.write StrComp(a,c) '返回1,说明a大于c
end function
%>

    关于我们 - 联系我们 - 广告服务 - 网站地图 - 版权声明 - 人才招聘