执行代码
执行代码节点运行自定义 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 兼容的基本类型。