条件分岐も慣れない。Javaのifブロックなら
if (foo == 0) { foo = 100; }
となるが、VBScriptでは
If foo = 0 Then foo = 100
となるみたい。比較か代入か判り難い。処理が複数行にわたるときには
If foo = 0 Then foo1 = 100 foo2 = 100 foo3 = 100 End If
とうように複数行で書く。「else」や「else if」を使用するときは間に挟むだけだが、それぞれ「Else」と「ElseIf」という記述になる。そういえばVBAを書いたときにも、「If」などはエディタに自動的に頭大文字に直されたのを思い出した。case文は
Select Case foo Case "a" foo = 0 Case "b" foo = 1 Case Else foo = 2 End Select
という感じ。数字のみでなく文字列を比較対象に出来るのは良いとして、「Case Else」というのが如何にもだ。「default」とかは出てこない。
ループ文も一通り揃ってはいるけど、
For i = 1 To 100 MyProc Next
やっぱり慣れない。「Next」でカウンタを増加させるとのこと。VBScriptの文法は、文章なのか記号なのかがはっきりしない印象がある。
モジュールとしてはプロシージャがあって「Sub」と「function」がある。「sub」は値を返すことができないが「function」は値を返せる。上手な使い分けは、まだあまりコードを見ていないので解らない。呼び出しは「Call」で行う。
大体文法的な部分は見えてきたけれど、何かサンプルを作ってみないと実感が沸かない。Objectとかはどうなっているのだろう。「new」とか出来るのかな。