Trang chủ>  Blog >  Chia sẻ kinh nghiệm >  Sử dụng Function Node trong n8n – viết logic tùy chỉnh

Sử dụng Function Node trong n8n – viết logic tùy chỉnh


Bạn dùng n8n để tự động hóa công việc, nhưng nhiều khi gặp tình huống “nửa no-code nửa code” như: Cần format lại số điện thoại, email, ngày tháng trước khi lưu Cần tính toán giá trị mới từ dữ liệu gốc Cần lọc danh sách khách hàng theo điều kiện cụ thể → Đây là lúc bạn cần dùng Function Node trong n8n – nơi bạn có thể viết một đoạn JavaScript ngắn để xử lý dữ liệu theo logic tùy chỉnh. Trong bài viết này, mình sẽ hướng dẫn bạn cách sử dụng Function Node để viết logic trong workflow, từ cơ bản đến ứng dụng thực tế.

  463 lượt xem

Nội dung bài viết

1. Function Node là gì? Dùng để làm gì?

Function Node là một node đặc biệt trong n8n, cho phép bạn viết JavaScript tùy chỉnh để:

  • Biến đổi dữ liệu (format số, email, ngày tháng…)
  • Tính toán giá trị mới (tổng tiền, chiết khấu, điểm trung bình…)
  • Lọc dữ liệu theo điều kiện
  • Tạo mảng, vòng lặp, xử lý nhiều item cùng lúc

👉 Function Node = “chìa khóa” để biến n8n từ công cụ kéo-thả thành công cụ tự động hóa cực kỳ linh hoạt.

 

2. Cấu trúc Function Node trong n8n

Khi mở Function Node, bạn sẽ thấy:

return items;

Đây là array chứa từng “item” (mỗi dòng dữ liệu). Bạn có thể duyệt, chỉnh sửa và trả lại mảng mới.

Ví dụ cấu trúc chuẩn:

return items.map(item => {

  const name = item.json.name.toUpperCase();

  item.json.formattedName = name;

  return item;

});

🎯 Kết quả: Thêm trường formattedName viết HOA cho từng item.

✅ Lưu ý:

  • Dữ liệu nằm trong item.json
  • Dùng .map() để xử lý từng item
  • Phải luôn return items cuối cùng

 

3. Các ví dụ thực tế thường dùng

🧮 a. Tính toán đơn giản (Tổng tiền)

return items.map(item => {

  const price = item.json.price;

  const quantity = item.json.quantity;

  item.json.total = price * quantity;

  return item;

});

🗓️ b. Format ngày tháng

return items.map(item => {

  const date = new Date(item.json.created_at);

  item.json.day = date.toLocaleDateString("vi-VN");

  return item;

});

📞 c. Chuẩn hoá số điện thoại

return items.map(item => {

  let phone = item.json.phone.replace(/\D/g, "");

  if (phone.startsWith("84")) phone = "0" + phone.slice(2);

  item.json.cleanedPhone = phone;

  return item;

});

🎯 d. Lọc item theo điều kiện

return items.filter(item => item.json.status === "active"); 

4. Khi nào nên dùng Function Node?

Tình huống

Giải pháp

Cần xử lý logic mà node có sẵn không hỗ trợ

Dùng Function Node để tự viết

API trả dữ liệu nested / cần transform dữ liệu

Viết lại dạng phẳng / đổi key trong Function Node

Dữ liệu cần được chuẩn hoá trước khi ghi vào Sheets

Format lại bằng Function Node

Cần tính toán từ các trường khác nhau

Viết công thức JavaScript ngay trong Function Node

✅ Checklist sử dụng Function Node hiệu quả:

  • Đọc kỹ dữ liệu vào (input item.json)
  • Dùng .map() để xử lý từng dòng
  • Không quên return đầy đủ
  • Kiểm tra bằng log console.log(item) nếu cần debug 

5. Học viết Function Node tại MCI Academy – Automation nâng cao

Function Node giúp bạn nâng tầm workflow – từ đơn giản kéo-thả thành workflow logic theo ý mình.
Nếu bạn muốn học từ A đến Z cách dùng Function, xử lý API, ghi dữ liệu Google Sheets/Gmail/Zalo,… thì MCI có lộ trình dành riêng cho bạn:

🎓 Khóa học Automation với n8n – MCI Academy

  • Học từ cơ bản → nâng cao: Trigger, Webhook, API, Function Node
  • Viết script xử lý dữ liệu từ Form → Zalo OA → Google Sheets
  • Mentor 1–1: hướng dẫn cách debug, xử lý lỗi, tối ưu tốc độ
  • Portfolio cuối khoá: Tự xây hệ thống automation real-time

📞 Hotline: 0352.433.233
📧 Email: cskh@mcivietnam.com

👉 Đăng ký ngay để làm chủ Function Node và biến n8n thành trợ lý tự động hoá cực mạnh cho doanh nghiệp của bạn.

Chương trình đào tạo: Phân tích dữ liệu, Khoa học dữ liệu, Kĩ sư dữ liệu, Lập trình ứng dụng.
Chất lượng nhất - Uy tín nhất - Nhiều học viên tin tưởng nhất
Hơn 8000 học viên ưu tú đã tốt nghiệp
Đăng ký tư vấn khóa học

*Vui lòng nhập số điện thoại của bạn

*Vui lòng nhập họ tên của bạn

*Vui lòng chọn địa điểm học

*Vui lòng chọn giới tính

*Vui lòng chọn 1 trường


Các bài viết liên quan


AMD Helios AI Server ra mắt: Bước tiến mới của AMD trong cuộc đua hạ tầng AI với NVIDIA

AMD chính thức đưa AI Server Helios vào sản xuất hàng loạt với GPU Instinct MI455X và CPU EPYC Venice. Đây là bước đi chiến lược giúp AMD cạnh tranh với NVIDIA trong thị trường hạ tầng AI, mở rộng hệ sinh thái cùng OpenAI, Anthropic và Cerebras.

Quản trị dữ liệu: Vì Sao Doanh Nghiệp Cần Trước Khi Triển Khai AI

Quản trị dữ liệu là nền móng bắt lực trước khi phát triển khai AI. Tìm hiểu vì sao quản trị dữ liệu quyết định thành công của mọi dự án AI trong doanh nghiệp

Data Center đang trở thành "mỏ dầu" của kỷ nguyên AI: Cuộc chiến nghìn tỷ USD phía sau ChatGPT, Gemini và thế hệ AI mới

Nếu cuộc cách mạng công nghiệp được thúc đẩy bởi dầu mỏ, thì kỷ nguyên trí tuệ nhân tạo (AI) đang được vận hành bằng những trung tâm dữ liệu khổng lồ. Đằng sau mỗi câu trả lời của ChatGPT, Gemini hay Claude không chỉ là những mô hình AI tiên tiến, mà còn là hàng chục nghìn GPU, hệ thống làm mát, nguồn điện công suất lớn và mạng lưới Data Center hoạt động 24/7. Chính vì vậy, cuộc cạnh tranh giữa các “ông lớn” công nghệ đang dần chuyển từ việc phát triển mô hình AI sang đầu tư mạnh vào hạ tầng tính toán – nơi được ví như “mỏ dầu” của nền kinh tế số mới.

Các bài viết liên quan