在VBscript中,有兩種procedure:Sub procedure與Function procedure
Sub過程:是包含在 Sub 和 End Sub 語句之間的一組 VBScript 語句。如果 Sub 過程無任何參數(shù),則 Sub 語句必須包含空括號 ()。
Call GetName() '調(diào)用Sub過程Sub GetName() MsgBox "John" '輸出字符串End Sub'Sub 過程可以使用參數(shù)(由調(diào)用過程傳遞的常數(shù)、變量或表達式)。實例代碼如下:Call GetName("John") '調(diào)用SubSub GetName(name) MsgBox name '輸出字符串End Sub'注意:Sub過程是沒有返回值
Function 過程:是包含在 Function 和 End Function 語句之間的一組 VBScript 語句。Function 過程與 Sub 過程類似,如果 Function 過程無任何參數(shù),則 Function 語句必須包含空括號 ()
Call GetName() '調(diào)用FunctionFunction GetName() MsgBox "John" '輸出字符串End Function'Function 過程可以使用參數(shù)(由調(diào)用過程傳遞的常數(shù)、變量或表達式)
Call GetName("John") '調(diào)用FunctionFunction GetName(name) MsgBox name '輸出字符串End Function'Function 是有返回值的,通過函數(shù)名返回一個值,這個值是在過程的語句中賦給函數(shù)名的。Function 返回值的數(shù)據(jù)類型總是VariantgetName "John" '調(diào)用FunctionFunction getName(name) getName = name '設置返回值End Function
如何調(diào)用過程
調(diào)用 Function 過程時,函數(shù)名必須用在變量賦值語句的右端或表達式中。
調(diào)用 Sub 過程時,只需輸入過程名及所有參數(shù)值,參數(shù)值之間使用逗號分隔。不需使用 Call 語句,但如果使用了此語句,則必須將所有參數(shù)包含在括號之中。
下面的示例顯示了調(diào)用過程的兩種方式。一種使用 Call 語句;另一種則不使用。兩種方式效果相同。
getName "John" '調(diào)用過程的第一種寫法Call getName("Candy") '調(diào)用過程的第二種寫法Sub getName(name) MsgBox "我是"&nameEnd Sub
Sub與Function的區(qū)別:
Sub沒有返回值,而Function有返回值。
Sub不能放在表達式中,而Function可以。