ここから本文です

例えば "arg.vbs" 内容 WScript.Echo "引数1=" & WScript.Arguments.Item(0)

tec********さん

2018/11/821:08:46

例えば "arg.vbs" 内容
WScript.Echo "引数1=" & WScript.Arguments.Item(0)

WScript.Echo "引数2=" & WScript.Arguments.Item(1)

これを保存・次のように実行すると、

C:\>cscript arguments.vbs test1 test2
結果表示
引数1=test1
引数2=test2

この中で、
wscript.arguments.item(i) は .item を書かないで、
WScript.Arguments(i) で大丈夫です。
違いは何ですか?

閲覧数:
70
回答数:
3

違反報告

ベストアンサーに選ばれた回答

プロフィール画像

カテゴリマスター

uso********さん

2018/11/1118:21:19

【蛇足】
.Item とか .Value とかはコンテナの
プロパティを省略した際に参照される
既定のプロパティ[デフォルトプロパティ]
ですね。

ググれば使い方や注意事項などは
見つかるかと。

この回答は投票によってベストアンサーに選ばれました!

ベストアンサー以外の回答

1〜2件/2件中

並び替え:回答日時の
新しい順
|古い順

2018/11/1113:34:52

https://msdn.microsoft.com/ja-jp/library/cc364500.aspx

cscriptにおいてarguments.vbsを実行した際の

・[script options and parameters]

パラメーターのナンバーリングでしょ。
でそのような省略形はDictionaryオブジェクトなどでも使われてたりしたはず。
(10数年前に見かけたような気がする)

ExcelVBAで.Valueプロパティを省略しても値を取得出来るみたいに、そもそもが曖昧に作られているのではないかと。

Prometheusさん

2018/11/821:27:20

初めて知りました。

https://www.relief.jp/docs/wsh-get-files-name-wscript-arguments.htm...

のサイトによれば、「Item」は、「省略可能」というような書き方です。

ある意味、「Item」を記述するのが、「正式」な書き方で、なくても同じ、ということみたいです。

私は、普段、

Set wa = WScript.Arguments
For i = 0 to wa.Count - 1
MsgBox(wa(i))
Next
Set wa = Nothing

というような使い方しかしたことがありませんでしたので、思いもしませんでした。

ちなみに上記の「VBScript」は、プログラムファイル(「~.vbs」ファイル)にドラッグ&ドロップするプログラムです。

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる