记得以前看见过调用函数时可以省略参数,不知道怎么实现的?
如:
<%
response.write aaa("www.","csdn.net")function aaa(a1,a2)
aaa = a1&a2
end function
%>
正常情况下会返回"www.csdn.net"我想实现的是经过处理在调用aaa的时候如果写成
response.write aaa()
则显示自定义默认值"www.msdn.net如何去做?请大家指教.谢谢.
ru
如:
<%
response.write aaa("www.","csdn.net")function aaa(a1,a2)
aaa = a1&a2
end function
%>
正常情况下会返回"www.csdn.net"我想实现的是经过处理在调用aaa的时候如果写成
response.write aaa()
则显示自定义默认值"www.msdn.net如何去做?请大家指教.谢谢.
ru
function aaa(a1,option a2 as string=“www.msdn.net”)
aaa = a1&a2
end function
该示例使用 Function 语句来声明 Function 过程的名称、参数、以及构成 Function 过程主体的代码。最后一个例子中使用了确定类型的、初始化的 Optional 参数。'下面的用户自定义函数返回
'它的参数的平方根。
Function CalculateSquareRoot(NumberArg As Double) As Double
If NumberArg < 0 Then '评估参数。
Exit Function '退出调用过程。
Else
CalculateSquareRoot = Sqr(NumberArg) '返回平方根。
End If
End Function使用 ParamArray 关键字可以使函数接收数目可变的参数。在下面的定义中,FirstArg 是按值传递的。Function CalcSum(ByVal FirstArg As Integer, ParamArray OtherArgs())
Dim ReturnValue
'如果用如下代码调用该函数:
ReturnValue = CalcSum(4, 3 ,2 ,1)
'则局部变量被赋予以下值:FirstArg = 4,
'OtherArgs(1) = 3,OtherArgs(2) = 2,等等。
'假设缺省数组下界 = 1。Optional 参数可以带缺省值,可以是除 Variant 之外的任何类型。'如果函数的参数定义如下:
Function MyFunc(MyStr As String, Optional MyArg1 As _ Integer = 5, Optional MyArg2 = "Dolly")
Dim RetVal
'则可用如下代码调用该函数:
RetVal = MyFunc("Hello", 2, "World") '提供了所有 3 个参数。
RetVal = MyFunc("Test", , 5) '省略了参数 2。
'参数 1 和参数 3 使用了命名的参数。
RetVal = MyFunc(MyStr:="Hello ", MyArg1:=7)
function aaa(a1, a2 )
if a2="" then
a2="www.csdn.com"
end if
aaa = a1 & a2
end functionresponse.write aaa("www.","")%>
vbscript不支持option参数,改用判断吧
楼主还是写两个函数,然后先判断参数的值,以决定调用哪种函数吧. 这样就很简单了,玩什么高难呢.