能写就别绕:Function / Function Item / Code 节点实战
选哪个?
- Function:一次处理一批
items
,常用于数组整体改造/汇总 - Function Item:逐条处理,每个 item 进来出一个 item
- Code(新):统一的代码节点,能覆盖前两者
数据结构复习
- n8n 传递的是
items
数组 - 每个 item 里有
json
和可选的binary
常用片段
- 逐条改字段:
javascript
// Function Item
item.json.total = item.json.price * item.json.qty
return item
- 一批过滤:
javascript
// Function
return items.filter(i => i.json.status === 'active')
- 展开嵌套数组:
javascript
// Function
const out = []
for (const i of items) {
for (const tag of (i.json.tags || [])) {
out.push({ json: { id: i.json.id, tag } })
}
}
return out
表达式还是代码?
- 规则简单、只改几个字段:表达式就够
- 规则复杂、跨多字段:用代码,容易维护
调试
- console.log 可以在执行日志里看到
- 注意返回结构必须是
items
/item
小结
会用代码节点,很多“绕 5 个节点”才能做的事,1 个节点就搞定。