如何在imacros中循环数组

How do I loop an array in imacros?

本文关键字:循环 数组 imacros      更新时间:2023-09-26

我想循环"pin_board",并在每次循环时替换"boardarray"。。这是下面的代码。``

var boardarray = ['board1', 'board2', 'board3', 'board4', 'board5'];
var text = 'pin_board';
for(var i in boardarray) {

pin_board = "CODE:";
pin_board += "VERSION BUILD=8300326 RECORDER=FX" + "'n";
pin_board += "TAB T=1" + "'n";
pin_board += "TAG POS=1 TYPE=BUTTON ATTR=TXT:Pin<SP>it" + "'n";
pin_board += "WAIT SECONDS=3" + "'n";
pin_board += "TAG POS=1 TYPE=LI ATTR=TXT:" + boardarray + "'n";
pin_board += "WAIT SECONDS=3" + "'n";
pin_board += "TAG POS=R1 TYPE=BUTTON ATTR=TXT:Pin<SP>it" + "'n";
pin_board += "WAIT SECONDS=5" + "'n";
}
iimPlay(pin_board);

感谢回复@karaxuna。。我修改了我的脚本,并在imacros上试用了它。。不幸的是,它只循环一次,而不是从board1开始,而是在baord5开始和结束。所以它只运行一次。我不知道我是否错过了什么。

这是经过编辑的代码。。

var boardarray = ['board1', 'board2', 'board3', 'board4', 'board5'];
var text = 'pin_board';
for(var i = 0; i < boardarray.length; i++)
{
pin_board = "CODE:";
pin_board += "VERSION BUILD=8300326 RECORDER=FX" + "'n";
pin_board += "TAB T=1" + "'n";
pin_board += "TAG POS=1 TYPE=BUTTON ATTR=TXT:Pin<SP>it" + "'n";
pin_board += "WAIT SECONDS=3" + "'n";
pin_board += "TAG POS=1 TYPE=LI ATTR=TXT:" + boardarray[i] + "'n";
pin_board += "WAIT SECONDS=3" + "'n";
pin_board += "TAG POS=R1 TYPE=BUTTON ATTR=TXT:Pin<SP>it" + "'n";
pin_board += "WAIT SECONDS=5" + "'n";
}
iimPlay(pin_board);

谢谢,

for(var i = 0; i < boardarray.length; i++)
{
    //...
    pin_board += "TAG POS=1 TYPE=LI ATTR=TXT:" + boardarray[i] + "'n";
}

不要将for in用于数组,将其用于对象以列出其属性

编辑

var boardarray = ['board1', 'board2', 'board3', 'board4', 'board5'];
var pin_board = '';
for(var i = 0; i < boardarray.length; i++)
{
    pin_board += "CODE:";
    pin_board += "VERSION BUILD=8300326 RECORDER=FX" + "'n";
    pin_board += "TAB T=1" + "'n";
    pin_board += "TAG POS=1 TYPE=BUTTON ATTR=TXT:Pin<SP>it" + "'n";
    pin_board += "WAIT SECONDS=3" + "'n";
    pin_board += "TAG POS=1 TYPE=LI ATTR=TXT:" + boardarray[i] + "'n";
    pin_board += "WAIT SECONDS=3" + "'n";
    pin_board += "TAG POS=R1 TYPE=BUTTON ATTR=TXT:Pin<SP>it" + "'n";
    pin_board += "WAIT SECONDS=5" + "'n";
}

"…不幸的是,它只循环一次,而不是从board1开始,而是在baord5开始和结束。所以它只运行一次。我不知道我是否错过了什么。"

当然,因为for完成了工作,然后运行iimPlay(pin_board);

如果你想每次都运行-只需将iimPlay(pin_board);放在for

for(var i = 0; i < boardarray.length; i++)
{
    pin_board += "CODE:";
    pin_board += "VERSION BUILD=8300326 RECORDER=FX" + "'n";
    pin_board += "TAB T=1" + "'n";
    pin_board += "TAG POS=1 TYPE=BUTTON ATTR=TXT:Pin<SP>it" + "'n";
    pin_board += "WAIT SECONDS=3" + "'n";
    pin_board += "TAG POS=1 TYPE=LI ATTR=TXT:" + boardarray[i] + "'n";
    pin_board += "WAIT SECONDS=3" + "'n";
    pin_board += "TAG POS=R1 TYPE=BUTTON ATTR=TXT:Pin<SP>it" + "'n";
    pin_board += "WAIT SECONDS=5" + "'n";
    iimPlay(pin_board);
}

你们读wiki.imacros.net吗?

var boardarray = ['board1', 'board2', 'board3', 'board4', 'board5'];
var pin_board = '';
for(var i = 0; i < boardarray.length; i++)
{
    pin_board += "CODE:";
    pin_board += "VERSION BUILD=8300326 RECORDER=FX" + "'n";
    pin_board += "TAB T=1" + "'n";
    pin_board += "TAG POS=1 TYPE=BUTTON ATTR=TXT:Pin<SP>it" + "'n";
    pin_board += "WAIT SECONDS=3" + "'n";
    pin_board += "TAG POS=1 TYPE=LI ATTR=TXT:{{board}}" + + "'n";
    pin_board += "WAIT SECONDS=3" + "'n";
    pin_board += "TAG POS=R1 TYPE=BUTTON ATTR=TXT:Pin<SP>it" + "'n";
    pin_board += "WAIT SECONDS=5" + "'n";
iimSet("board", boardarray[i])
iimPlay(pin_board);
}

http://wiki.imacros.net/iimSet