我试图在Imacros中创建一个字符串数组,然后获取一个字符串值并存储在var 2中,以便每次可以使用不同的(随机值)。

但是当我写这篇文章时,我在第二行有错误:

SET !VAR1 EVAL("var config = ['myConfigParameter1', '500', '4.1234213', 'http://an.url/'];config.join(';')")
SET !VAR2 EVAL("var config = '{{!VAR2}}'.split(';');config[0]")


我试图在Imacros firefox中运行它,并在运行它时在第二行指出错误:

s未定义,第7行(错误代码:-1001)

我按照本教程操作,从imacros中的数组获取字符串值。
http://www.iteamwork.de/imacros-scripting-use-more-than-x-variables-in-macro-script.html

那条线怎么了?

如何检索随机字符串并将其存储在var2中,以便可以在我的imacros代码中使用它?

我还尝试通过创建一个单独的js文件来完成核心JS方式,但这也没有用。

更新:

这是完整的代码:

VERSION BUILD=9030808 RECORDER=FX
SET !VAR1 EVAL("var config = ['myConfigParameter1', '500', '4.1234213', 'http://an.url/'];config.join(';')")
SET !VAR2 EVAL("var config = '{{!VAR2}}'.split(';');config[0]")
TAB T=1
wait seconds = 7
'TAG POS=1 TYPE=TEXTAREA ATTR=ID:chatmsg CONTENT=TestMessge
TAG POS=1 TYPE=TEXTAREA ATTR=ID:chatmsg CONTENT={{!VAR2}}
TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:sendbtn
wait seconds = 2
ONDIALOG POS=1 BUTTON=OK CONTENT=
wait seconds = 1
TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:disconnectbtn
ONDIALOG POS=1 BUTTON=OK CONTENT=
wait seconds = 2
ONDIALOG POS=1 BUTTON=OK CONTENT=
wait seconds = 1
TAG POS=1 TYPE=INPUT:BUTTON ATTR=*
ONDIALOG POS=1 BUTTON=OK CONTENT=


这是我的随机行:

SET randomNumber EVAL("var min = 0; var max = 4; var randomNumber = Math.floor(Math.random() * (max - min + 1)) + min; randomNumber;")
SET !VAR2 EVAL("var config = '{{!VAR1}}'.split(';');config[{{randomNumber }]")


随机数工作正常,但我不知道如何使用数组内的randomnumb变量来获取随机字符串。现在的问题在第二行。

最佳答案

SET !VAR2 EVAL("var config = '{{!VAR2}}'.split(';');config[0]")


我想您是想加入刚刚设置的数组var,对吗?因此它将是:

SET !VAR2 EVAL("var config = '{{!VAR1}}'.split(';');config[0]")

10-07 17:35