【发布时间】:2022-11-10 22:55:57
【问题描述】:
鉴于以下情况:
LET replacements = [
["foo", "bar"],
["bar", "baz"]
]
LET title = "foo"
// JS CODE
// title = replacements.reduce((acc, r) => r.replace(acc[0], acc[1]), title);
// or
// for (const r of replacements) {
// title = title.replace(r[0], r[1]);
// }
RETURN title
我用 JS 描述的逻辑如何在 aql 中实现?
我似乎无法让FOR 循环在不返回某些内容的情况下工作,而LET 本身似乎不允许进一步重新分配。
【问题讨论】:
-
你的预期结果是什么?在这种情况下,您想返回值
'bar'吗? -
预期的结果是“baz”,就像你在 JS 中实现的替换被执行后得到的那样
-
我认为在纯 AQL 中是不可能的,如果你想解决这个问题,你会使用 Foxx 微服务。 LET 分配一旦完成就不能更改。