在ASP編程中,經常需要自己編寫一些函數(或過程)來實現某些特定的功能,這時往往需要向函數(或過程)傳遞相應的參數
在函數(或過程)中進行數據處理,即有可能需要保留或改變參數的值,下面有相關范例
用下面的函數(TestAddress)就可以使一個函數多個返回值成為可能(一個函數返回值,多個參數改變後的值)
范例:
<%@LANGUAGE="VBSCRipT"%>
<%
Option Explicit
'===================================================================
' 參數傳遞
' 1.值傳遞參數 (Call By Value)
' Function TestValue(ByVal A,ByVal B)
' 函數內參數 A、B 改變 不影響 函數的外部變量
'
' 2.指針參數 (Call By Address)
' Function TestAddress(ByRef A,Byref B)
' 函數內參數 A、B 改變 影響到 函數的外部變量
'
' 說明:
' 1. 參數可以是數字、字符、數組、對象等VBSCRIPT語言所支持的大部分類型
' 2. 函數返回值的類型也可以是數字、字符、數組、對象等VBSCRIPT語言所支持的大部分類型
' 3. 過程調用參數方法與函數類似
'===================================================================
Dim A1,B1
Dim A2,B2
Function TestValue(ByVal A,ByVal B)
A = A + 1
B = B + 1
TestValue = A + B
End Function
Function TestAddress(ByRef A,Byref B)
A = A + 1
B = B + 1
TestAddress = A + B
End Function
A1 = 11
B1 = 33
A2 = 11
B2 = 33
Response.Write "初值:" & " "
Response.Write "A1=" & A1 & " "
Response.Write "B1=" & B1 & "<BR>"
Response.Write "函數(TestValue)值:" & TestValue(A1,B1) & "<BR>"
Response.Write "終值:" & " "
Response.Write "A1=" & A1 & " "
Response.Write "B1=" & B1 & "<BR><BR><BR>"
Response.Write "初值:" & " "
Response.Write "A2=" & A2 & " "
Response.Write "B2=" & B2 & "<BR>"
Response.Write "函數(TestAddress)值:" & TestAddress(A2,B2) & "<BR>"
Response.Write "終值:" & " "
Response.Write "A2=" & A2 & " "
Response.Write "B2=" & B2
'======================
' 相似過程
'======================
Sub Test_Value(ByVal A,ByVal B)
A = A + 1
B = B + 1
End Sub
Sub Test_Address(ByRef A,Byref B)
A = A + 1
B = B + 1
End Sub
%>