siromathics

関数のデフォルト引数

created:

関数に省略可能な引数を定義したいとき、下記のような方法がありました。

function func1 (arg) {
  // argが渡されればargが、渡されなければ'foo'が入る
  const foo = arg || 'foo'
  return foo
}

この方法でも利用上問題はありませんが、ES6のデフォルト引数を用いることでよりスマートに書くことができます。

function func2 (arg = 'foo') {
  // argが渡されない場合、関数内でのargの値は'foo'になる
  return arg
}

なお、undefinedを渡しても省略時と同様の処理になります。

func2(undefined) // 'foo'が返る

参考

タグ一覧