使用 Function 函式節點進行資料整合與陣列轉換 - n8n 工作流程

了解如何使用 n8n 的 Function 節點將多個傳入的項目整合成單一的 JavaScript 陣列。這是 n8n 工作流程中進行資料轉換的關鍵技巧。

工作流預覽

準備好自動化了嗎?

下載此 n8n 工作流程範本並立即開始使用。

n8n 工作流使用的節點

適用對象


  • 需要重構和整合被拆分資料負載的 n8n 使用者。

  • 在 n8n 工作流程中需要自訂 JavaScript 轉換邏輯的開發人員。

  • 處理需要單一整合性 JSON 陣列作為輸入的 API 的自動化專家。

  • 正在學習 n8n 範本中進階資料操作技巧的使用者。

總覽

資料轉換是建構穩定自動化的核心需求。雖然許多 n8n 節點會產生獨立的輸出項目(資料被拆分),但後續的服務通常要求一個包含所有記錄的單一整合性陣列。這個強大的 n8n 工作流程就是透過提供一個可重複使用的 n8n 節點設定,將多個項目合併成一個完整的 JSON 陣列,來解決這個挑戰。

這個特定的 n8n 範本利用 Function 函式節點來對應(map)輸入項目,高效且可靠地解決了項目整合的常見問題,讓你的整體 n8n 工作流程更簡潔、更快速。

運作方式

這個基礎的 n8n 工作流程一開始並沒有外部觸發器,而是依賴內部的測試節點來展示資料流動情形。


  1. 資料模擬: 「Mock Data (模擬資料)」n8n 節點會產生三個獨立的輸入項目,模擬從上一步驟(例如資料庫查詢或 API 呼叫)收到的資料。

  2. 整合邏輯: 所有三個項目會流入「Create an array of objects (建立物件陣列)」n8n 節點。這個 Function 函式節點會執行自訂的 JavaScript 來遍歷輸入陣列 (items)。

  3. 轉換: 腳本使用 items.map(item => item.json) 來從每個獨立的 n8n 項目中擷取原始資料負載,並將其編譯成一個連貫的 JavaScript 陣列。

  4. 最終輸出: n8n 工作流程最後會輸出一個單一項目,其中在 data_object 鍵值下包含了新形成的陣列。這種技術確保後續的 n8n 節點接收到的是整合好的資料,可以直接進行批次處理。

安裝指南

要開始使用這個資料整合 n8n 工作流程:


  1. 匯入 n8n 工作流程: 複製提供的 JSON 代碼。

  2. 開啟你的 n8n 實例並導航至「Workflows (工作流程)」區塊。

  3. 點擊「New (新增)」並選擇「Import from JSON (從 JSON 匯入)」。貼上全部代碼。

  4. 執行: 由於這個 n8n 範本只使用 Function 節點,因此不需要外部憑證。只需點擊「Test Workflow (測試工作流程)」或啟用工作流程並手動執行,即可看到資料轉換的實際效果。

  5. 檢查最後一個 n8n 節點的輸出,即可看到整合後的陣列結構。

節點詳情

這個 n8n 工作流程利用了兩個關鍵的 Function 函式節點:

節點名稱: Mock Data (模擬資料) (Function)
Function: 用於模擬 n8n 工作流程的輸入資料,產生三個獨立的 n8n 項目,每個項目都包含一個簡單物件(idname)。
關鍵設定: 包含寫死的 JavaScript,返回一個包含三個獨立物件的陣列,用以模擬「Split In Batches (批次拆分)」或資料庫 n8n 節點之後常見的結構。

節點名稱: Create an array of objects (建立物件陣列) (Function)
Function: 這個關鍵的 n8n 節點負責資料整合,將獨立傳入的項目合併成單一的陣列結構。
關鍵設定: 使用的 JavaScript 代碼是 return [ { json: { dataobject: items.map(item => item.json), }, } ];。這段代碼會對輸入的 items 進行映射 (map),擷取出資料負載 (item.json),然後將產生的 JavaScript 陣列包裝在 dataobject 鍵值下,作為單一輸出項目。這展示了任何複雜 n8n 範本中必備的資料操作技巧。

相關 n8n 工作流程

免費

節點: 1 節點
更新时间: 2025年12月26日
建立者
ghagrawal17
ghagrawal17

精選*