跳到主要内容

执行代码

执行代码节点运行自定义 JavaScript,实现标准节点覆盖不到的扩展逻辑。

执行代码节点参数配置面板

使用示例

场景一:纯数据计算(无需开启权限)

上游采集到商品价格列表,需要计算总价和均价:

{{prices}} = [99, 199, 299, 159]

代码块:

const prices = {{prices}};
const total = prices.reduce((a, b) => a + b, 0);
return { total, avg: total / prices.length };

输出变量填 result,下游用 {{result.total}}{{result.avg}} 引用。

场景二:操作页面 DOM(需开启权限)

页面中有一批复选框,需要按自定义规则批量勾选——内置的「勾选选框」一次只能操作一个,用代码块一次搞定:

document.querySelectorAll('.item-checkbox').forEach(cb => {
const row = cb.closest('tr');
const status = row.querySelector('.status').textContent;
if (status === '待处理') cb.click();
});
return 'ok';

场景三:调用页面已有的 JavaScript API(需开启权限)

页面自己暴露了一个 JS 函数 window.App.submitForm(),直接调用:

const result = window.App.submitForm({{formData}});
return result;

参数说明

参数类型默认值说明
执行代码JavaScript必填。{{变量名}} 在代码执行前被替换为实际值
输出变量文本存储 return 值的变量名。不填则丢弃返回值
警告

返回值必须是 JSON 兼容类型(String、Number、Boolean、Object、Array)。不能返回 DOM 元素、函数、Symbol。

常见问题

代码中无法访问 document / window

原因:未开启用户脚本权限,代码运行在沙箱中。

解决:在 chrome://extensions 中找到九头虫 RPA → 开启「允许运行用户脚本」权限。

返回值丢失或为 null

原因:代码没有 return 语句,或返回值不可序列化。

解决:确保 return 的是 JSON 兼容的基本类型。