Menu
CoddyTech

コマンドライン引数

CoddyのNode.jsジャーニー「Node.jsの基礎」セクションの一部。レッスン 3/33。

メモツールは、名前の後に何を入力したかを把握する必要があります。

process.argvは、コマンド内の単語を並べた配列です。Nodeへのパス、ファイルへのパス、そして入力した単語が含まれます。slice(2)を使うと、入力した単語だけが残ります。

// node greet.js Ada
const args = process.argv.slice(2);
console.log(`Hello, ${args[0]}!`);

node greet.js Adaを実行すると、Hello, Ada!が出力されます。各単語はそれぞれ独立した文字列として渡されるため、node greet.js Ada Lovelaceを実行すると、argsの値は['Ada', 'Lovelace']になります。単語を1つの文字列に戻すには、join(' ')を使います。['Ada', 'Lovelace'].join(' ')は'Ada Lovelace'になります。引用符で囲むと単語が1つにまとまります。node greet.js "Ada Lovelace"を実行すると、1つの文字列として渡されます。

challenge icon

チャレンジ

簡単

メモツールは、node notes.jsの後に入力した内容を知る必要があります。ここでは、コマンドからメモを読み取り、その内容をそのまま表示します。

  1. notes.jsで、process.argvを使ってnode notes.jsの後に入力された単語を読み取ります。最初の単語はコマンドのaddです。今のところ、これは常にaddです。その後に続く単語はすべてメモです。
  2. メモの単語は個別の文字列として渡されます。単語の間にスペースを1つ入れて、1つの文字列につなげます。
  3. 最初に用意されているconsole.log('Adding:')の行を置き換えます。1行を出力します。Adding: の後にメモを続けます。

node notes.js add Buy milkの場合、プログラムは次のように出力します。

Adding: Buy milk

node notes.js add Call Ada tonightの場合、次のように出力します。

Adding: Call Ada tonight

Adding:の後にスペースを1つ入れます。

試してみましょう: ターミナルで、$ node notes.jsの後の入力欄にadd Buy milkと入力して、Enterキーを押します。Adding: Buy milkと表示されます。次に、add Call Ada tonightのように、自分でメモを入力します。最後に、addだけを入力します。メモがないため、その後に何も続かないAdding:が表示されます。今のところはこれで問題ありません。

自分で試してみよう

// メモツールはここから始まります。
// node notes.js add Buy milk を実行すると、Adding: Buy milk と表示されるはずです。
console.log('Adding:');
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

Node.jsの基礎のすべてのレッスン

自分で練習してみよう: Expressプレイグラウンド