JavaScript | 配列→オブジェクトにリファクタリングする手順とAPI設計視点での戻り値設計のベストプラクティス

JavaScript JavaScript
スポンサーリンク

配列→オブジェクトにリファクタリングする手順

例題:配列で返す統計関数

function calcStats(values) {
  const sum = values.reduce((a, b) => a + b, 0);
  const avg = sum / values.length;
  const max = Math.max(...values);
  const min = Math.min(...values);
  return [sum, avg, max, min]; // 配列で返す
}

// 呼び出し
const [sum, avg, max, min] = calcStats([10, 20, 30]);
JavaScript

ステップ1:返す値に意味を付ける

  • 配列の 0番目= sum, 1番目= avg のように順番に依存していると、後で誤解やミスが起きやすい。
  • そこで「名前付きで返す」ことを検討する。

ステップ2:オブジェクトにまとめる

function calcStatsObj(values) {
  const sum = values.reduce((a, b) => a + b, 0);
  const avg = sum / values.length;
  const max = Math.max(...values);
  const min = Math.min(...values);
  return { sum, avg, max, min }; // オブジェクトで返す
}
JavaScript

ステップ3:呼び出し側を変更

const { sum, avg, max, min } = calcStatsObj([10, 20, 30]);
console.log(sum, avg, max, min);
JavaScript

実務メリット

  • 順序ミスがなくなる → コードレビューやチーム開発で安心。
  • 後から値を追加しても呼び出し側に影響が少ない。
  • 可読性・保守性が格段に上がる。
タイトルとURLをコピーしました