🎯 什麼情境該想到我

當你有一個命令式迴圈「一邊篩選、一邊轉換、一邊累加」,讀起來要在腦中模擬執行才懂資料怎麼變化的時候,想讓資料的流動一眼看清。

⚙️ 怎麼用(步驟 / 公式)

意圖:用集合管道(map / filter / reduce 等)取代迴圈,讓「資料從哪來、經過哪些處理、變成什麼」像一條由上而下的流水線一樣清楚,消除中途的暫存變數。

小步安全進行:

  1. 建立一個變數指向迴圈要走訪的集合(管道的起點)。
  2. 從迴圈頂端開始,把每一段行為逐一搬成一個管道操作:篩選 → filter、轉換 → map、彙整 → reduce(或 slice、flatMap 等)。
  3. 每搬一段就把它從原迴圈移除,並執行一次測試。
  4. 全部搬完後移除整個迴圈。

🧪 我實際套用的紀錄

  • (待填)

⚠️ 注意 / 什麼時候不適用

  • 管道太長、巢狀太深時反而更難讀,適度即可,不要為了無迴圈而硬串。
  • 效能敏感的熱點迴圈,管道可能產生額外中間集合,需要時再權衡。
  • 反向而言,若團隊不熟悉函式式風格,過度使用會增加閱讀門檻。

🔗 相關工具