设置变量
设置变量节点用于在流程中声明或更新变量,是所有数据传递的起点。后续任意节点均可通过 {{变量名}} 引用这些变量。
前置知识
使用本节点前,务必了解 变量与表达式,它涵盖:
{{变量名}}的两种使用模式(纯表达式 vs 混合文本)- 支持的运算(算术、比较、逻辑、三元)
- 内置函数(
getPageUrl()、random()、Math.*等) - 空值处理行为
概述
设置变量通过可拖拽排序的列表管理多个变量。点击「添加变量」新增一项,每项独立配置名称、类型和值来源。变量按列表顺序从上到下依次执行,后面的变量可以引用前面的变量。
使用方法
变量列表管理
- 点击「添加变量」新增变量项
- 拖拽左侧手柄调整变量执行顺序
- 每个变量项独立配置以下三个字段
变量名称
变量标识符,后续通过 {{变量名}} 引用。命名规范:
- 以字母、下划线
_或$开头 - 后续字符可以是字母、数字、下划线、
$ - 不能是保留字:
id、$item、$currentTabId、$currentId、$rootTabId、$rootWindowId、$currentWindowId - 不能包含空格
合法示例:username、_count、$price、userName2
不合法示例:123abc(数字开头)、user name(含空格)、id(保留字)
数据类型
| 类型 | 说明 | 示例 |
|---|---|---|
| String | 字符串 | "hello" |
| Number | 数字 | 99.00 |
| Boolean | 布尔值 | true / false |
| Object | 对象 | {"key": "value"} |
| Array | 数组 | ["A", "B", "C"] |
类型影响后续表达式运算时的行为——例如 + 在 String 上是拼接,在 Number 上是相加。
值来源
决定变量的值从哪里来,支持四种来源。
手动设置
直接填写固定值。最简单的来源,值在配置时就确定。
填写时会根据所选类型显示对应的输入控件(字符串输文本、数字输数字、布尔选开关等)。所有来源中,如果解析结果为空,会回退到此默认值。
页面元素
通过 CSS 选择器(或 AI 自然语言模式)从页面中提取元素数据。配置目标元素后,节点执行时会查询匹配的 DOM 元素,返回序列化后的元素数据(文本内容、属性等)。
适合从页面中动态抓取数据赋给变量。

引用变量
引用其他节点产出的变量值(如数据采集结果、HTTP 响应、上游设置变量的输出等)。引用的变量通过 {{变量名}} 语法获取,详见「变量与表达式」。支持数据清理管道——引用值后可叠加处理步骤(如 trim、toNumber、正则提取等),链式清洗后再赋值。
这是最灵活的来源:从任何上游拿数据,经过管道处理后变成自己需要的格式。管道操作符详见「数据清理管道」。
代码块
编写 JavaScript 代码,其返回值作为变量值。代码中可以使用 {{变量名}} 引用上游变量(详见「变量与表达式」),这些引用会在执行前被替换为实际值。
适合内置函数和管道都无法覆盖的复杂逻辑——自定义计算、条件判断、数据聚合等。

参数参考
| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
| 变量名 | 文本 | — | 必填。需符合命名规范,后续通过 {{变量名}} 引用 |
| 数据类型 | 下拉选择 | string | string / number / boolean / object / array |
| 值来源 | 下拉选择 | manual | manual — 手动设置;selector — 页面元素;variable — 引用变量;code — 代码块 |
| 默认值 | 视类型而定 | — | 手动设置模式的固定值,也是其他来源解析失败时的回退值 |
| 目标元素 | CSS 选择器 | — | 页面元素模式的元素定位器 |
| 引用值 | 变量引用 | — | 引用变量模式的变量来源,支持数据清理管道 |
| 代码 | JavaScript | — | 代码块模式的 JS 代码,返回值作为变量值 |
常见问题
变量引用了但显示为空
现象:在节点参数中写了 {{变量名}},但运行时替换为空。
原因:
- 变量未在引用前声明——设置变量节点在流程顺序上必须位于引用它的节点之前
- 变量名拼写不一致(大小写敏感)
解决:用「打印输出」节点在引用前确认变量存在;检查大小写。
表达式计算结果与预期类型不符
现象:{{count + 1}} 结果为 "11" 而非 2。
原因:变量类型为 string,+ 执行了字符串拼接。
解决:在设置变量时选择正确的类型(Number 而非 String),或在表达式中显式转换:{{Number(count) + 1}}。详见 变量与表达式。
后设置的变量未生效
现象:修改了变量值,但下游节点引用的仍是旧值。
原因:变量更新节点在流程中位于引用节点之后执行。
解决:检查流程连线顺序,确保设置变量节点在引用变量之前。可在设置变量后紧跟「打印输出」节点验证。
代码块执行报错
现象:代码块模式下流程执行到该节点时报错。
原因:JavaScript 代码存在语法错误,或引用了未定义的变量。
解决:先在浏览器 Console 中测试代码逻辑,确认无误后再贴入。代码中引用上游变量使用 {{变量名}},会被替换为实际值后再执行。