JavaScript 関数のパラメータ
1. パラメータ(関数の入力)
パラメータ (Parameters) を使用することで、関数に値を受け渡す(送信する)ことができます。パラメータは、関数定義(Definition)の かっこ内 に記述されます。
例
function 掛け算(a, b) {
return a * b;
}
let 結果 = 掛け算(4, 5);2. パラメータが1つの関数
関数は、パラメータを1つだけ持つように定義することもできます。
例
function 挨拶する(名前) {
return "こんにちは " + 名前;
}
let メッセージ = 挨拶する("太郎");function 摂氏に変換(華氏) {
return (5 / 9) * (華氏 - 32);
}
let 温度 = 摂氏に変換(77);3. 複数のパラメータを持つ関数
カンマで区切ることで、必要な数だけパラメータを追加することができます。
function フルネーム(名, 姓) {
return 名 + " " + 姓;
}
let 名前 = フルネーム("太郎", "山田");4. パラメータ (Parameters) vs. 引数 (Arguments)
JavaScript では、パラメータ と 引数 は厳密には異なる概念として区別されます。
- パラメータ (Parameters) は、関数定義 にリストされている 名前(変数名)のことです。
- 引数 (Arguments) は、関数を呼び出す際に渡され、関数が受け取った 実際の値 のことです。
5. パラメータのルール
JavaScript の関数定義には、他の言語とは異なるいくつかの特徴的なルールがあります。
- データ型の指定なし: JavaScript の関数定義では、パラメータのデータ型を指定しません。
- 型チェックの欠如: JavaScript の関数は、渡された引数に対して型チェック(Type checking)を行いません。
- 引数の個数チェックなし: JavaScript の関数は、受け取った引数の個数がパラメータの数と一致しているかどうかのチェックを行いません。
6. 正しくないパラメータの呼び出し
パラメータの数が合わない状態で関数を呼び出すと、予期しない(正しくない)結果が返されることがあります。
例
引数を渡さずに関数を呼び出した場合:
function 摂氏に変換(華氏) {
return (5 / 9) * (華氏 - 32);
}
let 温度 = 摂氏に変換(); // 華氏が undefined になり、結果は NaN になります7. デフォルトパラメータ値 (Default Parameter Values)
ECMAScript 2015 (ES6) 以降、関数のパラメータに デフォルト値 を設定できるようになりました。
引数が提供されなかった場合、あるいは undefined が渡された場合に、このデフォルト値が適用されます。
例
もし y が渡されない、または undefined の場合、y は 10 になります。
function 私の関数(x, y = 10) {
return x + y;
}
私の関数(5); // 結果は 15 (5 + 10)