asp(vbscript)でユーザー定義関数のデフォルトパラメータ実現コード


現代言語の関数にはデフォルトのパラメータがありますが、vbscriptシステム内に構築された関数はオプションの値(一般的なsplitなど)を持つことができます。
オプションのパラメータを実現するための方法を以下に提供します。

functin foo(dtype, dsize, value)
   dim a, b
   if TypeName(dtype) <> "Error" Then
       a = dtype
   else
       a = "default value"
   end if
   If TypeName(dsize) <> "Error" Then
       b = dsize
   else
       b = -1
   end if
   .
end function
例のコードに示すように、foo関数のdtype、dsizeはオプション関数であり、呼び出し時にパラメータを伝えることができ、パラメータを渡さないこともできます。パラメータを渡さない場合は、カンマのプレースホルダをなくしてはいけません。つまり、foo(myvalue)という形式を使うべきです。