4、精通 n8n 表达式

4、精通 n8n 表达式

image.png

本模板是一个互动式分步教程,旨在教会您 n8n 中最关键的技能:使用表达式来访问和操作数据

如果您了解 JSON 但不确定如何从一个节点提取特定信息并在另一个节点中使用,这个工作流正适合您。它从充当文件柜的单一”源数据”节点开始,然后引导您完成一系列课程,每节课都演示一种检索和转换数据的新技术。

您将学习如何:

  1. 从前置节点获取简单数值
  2. 使用 n8n 内置选择器如  和 
  3. 从list (Array)中获取特定项
  4. 深入嵌套data (Objects)内部
  5. 结合这些技巧来访问 array of objects中的数据。
  6. 通过使用 JavaScript 函数进行数学运算或修改文本,实现超越简单检索的操作。
  7. 使用  和  等实用函数检查数据。
  8. 利用  和箭头函数对multiple items进行汇总。

表达式是一小段代码,放在双大括号 内,当工作流运行时会被动态值替换。它是连接各个节点的“胶水”。

此节点包含了本教程的所有示例数据。可以把它想象成一个文件柜,其他所有节点都会从这个柜子里获取特定的信息。

查看它的输出以熟悉数据结构。我们有:

  • 简单文本()
  • 数字()
  • 技能列表()
  • 复杂项目列表()
  • 嵌套的联系人对象()

image.png

这是你在 n8n 中最常做的操作。

目标: 从 “Source Data” 节点获取用户的姓名。

表达式:

解析:

  • :告诉 n8n “这是一个动态表达式”。
  • :选择我们想要获取数据的节点。
  • :缩小范围到当前项目的 JSON 数据。
  • :选择我们想要获取值的具体

其他可能方式:

  • 也可以把右侧字段拖拽到输入框
  • 在这种情况下, 也可以使用,因为 可以访问前一个节点的数据。

image.png

在上一课中,我们使用了 。当一个节点只输出一个项目时,这等同于 。显式使用 往往更安全、更清晰。

目标: 使用 选择器获取用户姓名。

表达式:

为什么这样更好? 如果一个节点返回多个项目, 可以保证你只获取最后一个项目的数据。

如果你需要将选中的数据与输入项目匹配,这时 是无法替代的。

其他选择器:

  • :获取第一个项目的数据。
  • :获取所有项目的数据,返回为对象数组。(这与 不同!)

image.png

如果数据在列表(数组)中呢?你需要指定想要的哪一项

目标: 获取用户的第二项技能。

表达式:

解析:

  • :选择技能数组。
  • :选择特定位置的元素。
  • 重要提示: 数组是“从零开始索引”的,这意味着第一项是 ,第二项是 ,第三项是 ,以此类推。

image.png

有时,数据会被组织在对象内部的对象中。

目标: 获取用户的电子邮件地址。

表达式:

解析:

  • :首先访问 对象。
  • :然后再使用一个点 进入下一层,获取其中 键的值。

image.png

这是对前几课内容的终极考验!

目标: 获取列表中第一个项目的 status

表达式:

解析:

  1. :选择项目数组。
  2. :选择数组中的第一个对象。
  3. :从该对象中获取 键的值。

image.png

你不仅可以获取数据,还可以操作和检查数据!

表达式示例:

  • 转换文本:
  • 数学运算:
  • 检查数据类型:

解析:

  • :字符串的标准 JavaScript 函数,用于转换为大写。
  • : 对象提供强大的数学函数。
  • :一个操作符,用于告诉你当前数据的类型(如 “string”、”number”、”object” 等)。

image.png

如果你有一个对n8n 工作流 教程象,但不知道里面有哪些键,该怎么办? 就能派上用场。

目标: 获取 对象中所有键的列表。

表达式:

这在动态处理数据时非常有用。它会返回一个数组,包含所有键的名称(例如 )。

image.png

有时你需要将结构化的 JSON 对象转换回一个干净的单行字符串。这在向其他服务发送数据时很常见,比如在 AI 提示中。

目标: 将整个 对象转换为格式化字符串。

表达式:

解析:

  • :执行转换的函数。
  • :可选参数,用于“美化输出”,在字符串中添加 2 个空格缩进,使其更易读。

image.png

如果一个节点输出多个项目,而你想对它们进行汇总,该用 。

目标: 获取所有用户技能,并合并成一个逗号分隔的字符串。

表达式:

什么是 ? 这是箭头函数(Arrow Function),是一种“对每个元素执行某个操作”的简写形式。

  • :在循环中临时代表当前项目的变量名。
  • :箭头,用于分隔元素和要执行的操作。
  • :要执行的操作——这里是从每个项目中获取技能值。

image.png

image.png

这个节点运用我们学过的所有知识,构建了一个最终的汇总对象。

image.png

  • 引用:点击阅读原文
  • 代码

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/250590.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月13日 下午6:42
下一篇 2026年3月13日 下午6:42


相关推荐

关注全栈程序员社区公众号