Node.js(JavaScript)でコマンドライン引数を取得するには、processオブジェクトのargvを使用します。
コマンドライン引数を渡す
引数を指定してNode.jsのコードを実行する場合は、以下のように指定します。
構文
node [jsファイル名] [引数1] [引数2] [引数3]…実行例
node argv-test.js apple banana orangeコマンドライン引数を受け取る
Node.jsではargv[0]がnodeで、argv[1]が実行ファイル名(argv-test.js)です。
argv[2]以降が指定したコマンドライン引数となります。
引数のインデックス
node argv-test.js apple banana orangeを実行した場合、引数のインデックスは以下の通りになります。
| インデックス | 内容 |
|---|---|
| 0 | nodeコマンドのパス |
| 1 | argv-test.jsのパス |
| 2 | apple |
| 3 | banana |
| 4 | orange |
コードでの引数受け取り
process.argv[インデックス]で値を受け取ります。
コードサンプル(argv-test.js)
for(var i = 0; i < process.argv.length; i++){ console.log("argv[" + i + "] = " + process.argv[i]);}実行結果例(argv-test.js)
argv[0] = /usr/bin/nodeargv[1] = /tmp/argv-test.jsargv[2] = appleargv[3] = bananaargv[4] = orange【補足】processオブジェクトについて
- Node.jsからコマンドライン引数を取得するには、processオブジェクトのprocess.argvプロパティを参照します。
- processオブジェクトはNode.js実行環境のグローバル変数であるため、モジュールをrequireで読み込む必要はありません。
- process.argvは、文字列配列です。
nodeコマンドがインストールされていない場合はこちらのリンク(Ubuntu)もご参照ください。
JavaScript学習者にお勧めの本
以上で本記事の解説を終わります。
よいITライフを!