JavaScriptにおけるデフォルト引数についてメモしておく。
デフォルト引数
デフォルト引数は、仮引数に対応する引数が指定されない場合、デフォルトで代入される値を指定することができる。もしデフォルト値が指定されていない仮引数に値が渡さなかった場合、その引数はundefined
になる。
基本的な書き方
デフォルト引数は、<仮引数> = <デフォルト値>
で指定することができる。
function sample (<仮引数> = <デフォルト値>, <仮引数> = <デフォルト値>,...){
// 処理内容
}
サンプル
処理を確認する簡単なサンプルを書いてみた。
function sum(a, b = 5, c = 2) {
return a + b + c;
}
console.log(sum()); // NaN
console.log(sum(2)); // 9
console.log(sum(2, 1)); // 5
console.log(sum(2, 1, 10)); // 13
また、デフォルト引数はその前の引数(仮引数の左側)を使って指定することもできる。
function sample(a, b = a * 2) {
return a + b;
}
console.log(sample(5)); // 15
ちなみに、今回は仮引数に対して指定された引数が少ない場合だったが、逆に多い場合は単純に引数が無視されて処理が行われる。
console.log(sum(2, 1, 10, 3)); // 13