7.13Functions / No Reassign Params

パラメータの再代入はしない

パフォーマンスの問題や予期せぬ動作を避けるため、パラメータを再代入しないでください

パラメータ変数を再代入すると、コードが読みにくくなり、元の引数の値が何であったかを追跡するのが難しくなります。また、一部のJavaScriptエンジン(特に古いV8)では、パラメータの再代入が関数の最適化を妨げることがありました。新しい変数を宣言して値を代入する方が、意図が明確で安全です。

❌ Bad
// bad
function f1(a) {
  a = 1;
  // ...
}
✅ Good
// good
function f3(a) {
  const b = a || 1;
  // ...
}

function f4(a = 1) {
  // ...
}