條件判斷與流程控制:IF 節點的妙用【n8n 基礎篇05】

上一篇我們聊到 n8n 的資料流轉,其實那就是一條資料的高速公路。 但你會發現,現實中的自動化流程可不只是「從 A 跑到 B」這麼單純。

很多時候,我們會遇到像這樣的情境

  • 只有當欄位值等於某個條件,才需要往下執行
  • 不同的資料類型,要走不同的路線
  • 有些資料不符合條件,要直接中斷不往下跑

這時候,n8n 裡面的 IF 節點 就是我們的關鍵角色了。

IF 節點到底是什麼?

顧名思義,IF 節點就是「判斷條件」的工具。

它的功能就像程式語言裡的 if...else

  • 條件成立 → 走 True 分支
  • 條件不成立 → 走 False 分支

你可以把它想成流程裡的一個「紅綠燈」,

決定資料要往哪個方向走。


一個最常見的使用情境

舉個我自己常用的例子:

我有一個訂單表單(Form Trigger),裡面有個欄位是「是否已付款」。

我想要:

  • 如果已付款 ✅ → 把資料送進訂單處理流程
  • 如果未付款 ❌ → 把資料寄信提醒通知流程

這時候我就在 Form Trigger 後面接一個 IF 節點,條件設定為:

field: 已付款
operation: equals
value: true

然後:

  • True 分支連到 HTTP Request(送進訂單系統)
  • False 分支連到 Gmail(發出提醒)

這樣,一條流程就變成一個「自動分流系統」。


IF 節點的設定方式其實很直覺

  1. 選擇欄位(Conditions) → 這是你要拿來判斷的資料欄位,比如 status(狀態)或 paid(付款)。
  2. 設定條件 → 設定條件前需要判斷以下六種資料類型: String, Number, Date & Time, Boolean, Object → 確定類型後可以選 is equal to、contains、greater、less 等功能 基本上的判斷邏輯都夠用。
  3. 輸入比較值 → 設定你想比對的內容(表單送出的數值),在這邊我是寫 已付款,也可以改成 true完成>100 等。
  4. 看結果分流 → True 跑右邊,False 跑左邊(n8n 的介面上會很清楚地顯示),圖片中的範例是跑 Ture。

IF 節點能玩的花樣很多

IF 不只是「對或錯」這麼簡單,

這裡分享幾個我自己實際用過的組合。

1. 多條件判斷

n8n 的 IF 可以用 多條件

  • 例如 狀態 = 已完成 總金額 > 1000
  • 你可以決定條件之間是 AND 還是 OR。

2. 搭配時間條件

想像一個自動化通知流程:

  • 如果今天的日期距離出貨日只剩 2 天,就自動發信。 這時候 IF 可以搭配 Function 把日期算出來,再進行判斷。

3. 篩掉不必要的資料

有時候你會收到一堆資料,但其實只有一部分是有用的。

IF 可以幫你先把不符合條件的資料「擋掉」,避免浪費後面節點的資源。


IF ≠ Function:別太快寫程式

很多人剛開始學 n8n,

一遇到判斷就直接進Code(Function)寫 JavaScript。

但其實,IF 節點能處理掉 8 成以上的條件分支

這不只讓流程圖更清楚,

未來要維護的時候,也不用再進去挖 Function 內容。

我自己的習慣是:

  • 如果只是單純判斷 → 用 IF
  • 如果有多層邏輯(像巢狀 if、日期計算) → 才會加 Function

IF + Merge = 真正的流程控制力

當你把 IF 和 Merge 搭在一起,就可以做到很靈活的流程控制。

例如:

  • True 分支 → 處理流程 A
  • False 分支 → 處理流程 B
  • 最後再 Merge 回來 → 統一送進報表 API

這樣,你就不需要寫複雜的條件判斷,只要清楚地把流程「分出來再合起來」。


我的經驗小提醒

  • IF 的條件判斷不分大小寫,記得確認你的輸入值格式。
  • 不確定資料值的時候,先用 Function 或 Debug node 把 items 印出來。
  • 一條流程可以用多個 IF 節點串起來,像積木一樣逐層過濾。
  • 避免把所有條件塞進一個 IF,邏輯越清楚,流程越好 debug。

結語

如果說節點是 n8n 的文法,那 IF 節點就是這門語言的「邏輯判斷力」。

它讓你的流程不只是「執行」,而是能夠「判斷」、「選擇」、「控制」。

一開始我也會傾向什麼都寫進 Function,

但後來發現,用 IF 把邏輯「攤開來」其實更直覺,也更容易維護。

而這,就是流程設計成熟的第一步。


下一篇,我會帶你玩另一個同樣重要的節點,讓工作流可以不斷重複執行它的自動化流程。

到了這一步,你就不只是用 n8n,而是掌握關鍵的節點知識,開始能夠不寫程式的「設計系統」 !


延伸閱讀(我的 n8n 系列文章)

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *