A400 関数の引数とデフォルト値の設定

関数を呼び出す時、呼び出し側から関数へ値を渡す際に引数と呼ばれるものを用いることができます。関数は渡されてきた値を受け取り引数のところに記述した変数に格納したあと、関数のブロック内で利用することができます。今回は引数を使って関数へ値を渡す方法について紹介します。

関数の引数について

基本的な使い方

function 関数名(引数) { 処理 }という形を用いて関数を定義します。関数が呼び出されると渡されてきた値が変数として格納されます。関数の引数に記述した変数は、関数のブロック内で参照することができます。

JavaScript
function hello(message){
  console.log(message);
}

hello("こんにちは!");

出力結果

JavaScript
こんにちは

上記の例では、”こんにちは”という文字列が引数として変数messageに格納され、出力がされております。

デフォルト値の設定方法

関数の引数に対して “引数名=デフォルト値” と記載することでデフォルト値を設定しておくこともできます。

JavaScript
function sum(number1, number2=1){
  console.log(number1 * number2);
}

sum(10, 10);
sum(10);

出力結果

JavaScript
100
10

引数が1つの場合は、number1には10が格納され、number2にはデフォルト値として1が格納され処理が行われます。

例題

以下コードの出力値はどれか

JavaScript
function subtraction(number1, number2=0){
  console.log(number1 - number2);
}

subtraction(10,5);
  1. 10
  2. 50
  3. 15
  4. 5
回答

4. 5
第一引数には10が格納され、第二引数には5が格納され、10-5 = 5となるため。

エンジニアからのアドバイス

その関数を呼び出したときに引数の数が足りない、もしくは渡されていないと、引数の値は”undefined”とみなされます。結果として、処理が正しく行われなくなるケースがございますので、必要に応じてデフォルト引数を設定しておきましょう。

---