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ế.

  301 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.

Generated image

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

Generated image

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"); 
Generated image

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 
    Generated image

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


Prompt Engineering: 7 nguyên tắc viết prompt hiệu quả

AI không đoán ý bạn. AI thực thi yêu cầu được mô tả rõ ràng. Dưới đây là 7 nguyên tắc cốt lõi giúp bạn viết prompt “ra đúng thứ mình cần”, kèm ví dụ áp dụng ngay cho công việc phân tích dữ liệu/marketing/BI.

So sánh n8n và Zapier – nên dùng cái nào cho doanh nghiệp nhỏ?

Bạn muốn tự động hóa quy trình kinh doanh nhưng phân vân không biết chọn công cụ nào? Zapier nổi tiếng, nhưng n8n lại mã nguồn mở, linh hoạt và miễn phí? → Trong bài viết này, chúng ta sẽ so sánh n8n và Zapier dựa trên các tiêu chí: dễ dùng, giá cả, khả năng mở rộng và phù hợp với doanh nghiệp nhỏ.

Làm thế nào để kết nối n8n với Google Sheets & cập nhật dữ liệu realtime

Bạn đang dùng Google Sheets như một hệ thống lưu trữ dữ liệu đơn giản cho khách hàng, form đăng ký, đơn hàng… nhưng việc cập nhật thủ công tốn thời gian và dễ sai sót? → Với n8n, bạn có thể kết nối Google Sheets và cập nhật dữ liệu realtime từ form, CRM, chatbot, hay hệ thống nội bộ – không cần code.

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