vbs(asp)下的Function 语句_ASP基础

Function 语句
声明 Function 过程的名称、参数以及构成其主体的代码。

 [Public [Default]| Private] Function name [(
   arglist
)]
[statements]
[name = expression]
[Exit Function] 
[statements]
[name = expression]
End Function 参数
Public 
表示 Function 过程可被所有脚本中的所有其他过程访问。 
Default 
只与 Class 块中的 Public 关键字一起使用来表示 Function 过程是类的默认方法。如果在一个类中指定了不止一个 Default 过程,就有错误发生。 
Private 
表示 Function 过程只可被声明它的脚本中的其他过程访问或者如果函数是一个数据类,那么 Function 过程只能被该类中的其他过程访问。 
name 
Function 的名称,遵循标准的变量命名规则。 
arglist 
代表调用时要传递给 Function 过程的参数的变量列表。用逗号隔开多个变量。 
statements 
在 Function 过程的主体中执行的任意语句组。 
expression 
Function 的返回值。 
arglist 参数包含下列语法和部分:

[ByVal | ByRef] varname[( )]

参数
ByVal 
表示该参数是按值方式传递的。 
ByRef 
表示该参数按引用方式传递。 
varname 
代表参数变量的名称;遵循标准的变量命名规则。 
说明
如没有显式指定使用 Public 或 Private,则 Function 过程默认为公用,即它们对于脚本中的所有其他过程是可见的。Function 中局部变量的值在对过程的调用中不被保留。

不能在任何其他过程(例如,Sub 或 Property Get)中定义 Function 过程。

使用 Exit Function 语句可以从 Function 过程中立即退出。程序继续执行调用 Function 过程的语句之后的语句。可在 Function 过程的任何位置出现任意个 Exit Function 语句。

与 Sub 过程类似,Function 过程是可以获取参数、执行一系列语句并改变其参数值的独立过程。与 Sub 过程的不同之处是:当要使用由函数返回的值时,可以在表达式的右边使用 Function 过程,这与内部函数的使用方式一样,例如 Sqr、Cos 或 Chr。

在表达式中,可以通过使用函数名,并在其后用圆括号给出相应的参数列表来调用 Function 过程。有关调用 Function 过程的详细信息,请参阅 Call 语句。

警告   Function 过程可以是递归的,即该过程可以调用自身以完成某个给定的任务。但是,递归可能会导致堆栈溢出。
要从函数返回一个值,只需将值赋给函数名。在过程的任意位置都可以出现任意个这样的赋值。如果没有给 name 赋值, 则过程将返回一个默认值:数值函数返回 0,字符串函数返回零长度字符串 ("")。如果在 Function 中没有对象引用被指定给 name(使用 Set),则返回对象引用的函数将返回 Nothing。

下面的样例说明如何给一个名为 BinarySearch 的函数赋返回值。在此样例中,将 False 赋给了该函数名,表示没有找到某个值。

Function BinarySearch(. . .)
      . . .
      ' 未找到该值。返回 False 值。
      If lower > upper Then
          BinarySearch = False  
          Exit Function 
      End If
      . . .
End Function在 Function 过程中使用的变量分为两类:一类是在过程内显式声明的,另一类则不是。在过程内显式声明的变量(使用 Dim 或等效方法)总是过程的局部变量。被使用但没有在过程中显式声明的变量也是局部变量,除非在该过程外更高级别的位置显式声明它们。

警告   过程可以使用没有在过程内显式声明的变量,但只要有任何 script 级定义的名称与之同名,就会产生名称冲突。如果过程中引用的未声明的变量与其他的过程、常数或变量的名称相同,则会认为过程引用的是脚本级的名称。要避免这类冲突,请使用 Option Explicit 语句可强制显式声明变量。
警告   VBScript 可能会重新排列数学表达式以提高内部效率。当 Function 过程修改数学表达式中变量的值时,应避免在同一表达式中使用该函数。

时间: 2024-10-22 05:10:32

vbs(asp)下的Function 语句_ASP基础的相关文章

vbs(asp)下的Function 语句

Function 语句 声明 Function 过程的名称.参数以及构成其主体的代码. [Public [Default]| Private] Function name [(    arglist )] [statements] [name = expression] [Exit Function]  [statements] [name = expression] End Function 参数 Public  表示 Function 过程可被所有脚本中的所有其他过程访问.  Default

asp下DateDiff 函数参数说明_ASP基础

DateDiff 函数  描述  返回两个日期之间的时间间隔.  语法  DateDiff(interval, date1, date2 [,firstdayofweek][, firstweekofyear]])  DateDiff 函数的语法有以下参数:  参数 描述  interval 必选.字符串表达式,表示用于计算 date1 和 date2 之间的时间间隔.有关数值,请参阅"设置"部分.  date1, date2 必选.日期表达式.用于计算的两个日期.  firstday

详细讲解ASP脚本循环语句_ASP基础

如果有人告诉你学习 ASP 不需要任何编程知识,那么他错了:如果我告诉你学习 ASP 必须掌握一门编程语言,那么我错了.ASP 动态服务器页面环境的特点就在于它是通过一种或几种脚本语言而写成的,脚本语言可以看作是编程语言的简化版,它易于学习和掌握,这给广大动态网站的设计者们提供了相当大的便利.可以这么说 : 脚本语言运用的得当与否直接关系到 ASP 应用程序的优与劣.继上一篇我们学习了脚本语言 VBScript 的函数和条件语句后,今天我们继续来看看 VBScript 中的循环语句.   循环语

站长感慨asp编程究竟何去何从[原创]_ASP基础

令人抱憾的一个现象,今天一个同事说我的网络编程栏目下的asp编程,竟然没有带来任何ip,我的站的好多asp编程资料都是手工从各大比较好的asp编写的系统中提取出来的asp的精华代码,网上转载了我的全站信息的网站有很多,我的站的asp编程,asp下fso操作,asp小偷与采集,asp class类的都是精品文章,其中asp基础更是包括了6大对象等基础学习资料,希望能给学习asp编程类的朋友带来一定的便利,而且我要说的是,大家如果来学asp的基础编程,那么我可以负责任的告诉大家,大家如果还在到底学a

用ASP开"多线程"_ASP基础

在网上找到一个用ASP开的假线程,发现和我以前做的一个程序不谋而合,只不过以前用的是VB,摘下来,储备. 1.原理实验 原理当然都一样,利用web服务器支持多线程,在同一页面里向服务器发多个http请求来完成我们的工作.还是先实验一下,在一个页面里同时写2个txt文件,比较写入时间的差异.代码如下: <% startime=timer()''----------asp实现多线程----------''function runThread()dim Httpset Http=Server.crea

使用模板实现ASP代码与页面分离_ASP基础

每个进行过较大型的ASP-Web应用程序设计的开发人员大概都有如下的经历:ASP代码与页面HTML混淆难分,业务逻辑与显示方式绞合,使得代码难以理解.难以修改:程序编写必须在美工之后,成为项目瓶颈:整合的程序代码和HTML静态页面时,花费大量的时间才能得到理想的效果,兼作了美工.的确,用脚本语言开发Web应用不容易将数据的处理和数据的显示分开,但在多人合作的情况下,如果无法将数据和显示分开,将大大影响开发的效率,专业分工的发挥. 其它的脚本语言,如JSP.PHP都有自己的解决方案,ASP的后一代

asp数个使用技巧_ASP基础

●布尔型数据还可以这样转化: share=true sharex=not(sharex) response.write sharex 得到结果是false 少了很多if判断  15:49 2006-3-29 ●插入含'(单引号)数据: title=replace(title,"'","''") Set update=conn.Execute("insert into netcang(title) Values('"&title&&

ASP七大对象说明分析_ASP基础

/*-------------------ASP文档参考集-----------------------*/ *-->作者:草履虫 *-->时间:2007-4.28---2007-4.30(原来是自己编写的手册,现在发在这里) *-->联系:caolvchong@gmail.com *-->文档功能: 1.复习了ASP,加深了对ASP结构的理解和ASP的体会 2.可以用来做ASP参考,自己写的,参考起来更方便 这是第二部分:ASP七大对象 /*-------------------

asp是什么格式 asp文件用什么打开_ASP基础

什么是ASP,它能干什么? 一.什么是ASP? 从字面上说,ASP包含三方面含义: 1.Active:ASP使用了Microsoft的ActiveX技术.ActiveX(COM)技术是现在Microsoft软件的重要基础.它采用封装对象,程序调用对象的技术,简化编程,加强程序间合作.ASP本身封装了一些基本组件和常用组件,有很多公司也开发了很多实用组件.只要你可以在服务器上安装这些组件,通过访问组件,你就可以快速.简易地建立自己的WEB应用. 2.Server:ASP运行在服务器端.这样就不必担