私の認識ではノード単体では、いわゆる繰り返し処理というのはない為、自ら変数値をもってループさせる方法をとっています。私がしていた具体的な方法について掲載します。
- ループ構成
functionノードにて、カウンタ用の変数を定義(initCnt)し、switchノードにて最大件数以下の場合はfunctionノード(loopCnt)を行うようにします。loopCntノードにてカウンタをアップし、完了すると、debugノード(loopEnd)が呼ばれます。特徴として、以下のように8の字に線がなります。
- function(initCnt)ノード
特定のmsg.payloadのJSONオブジェクトを、一旦JSON文字にし再度parseしてJSON化することで、参照渡しではなく値渡しとなるようにしています。正しい方法は、changeノードを使って、別オブジェクトに値を移すのがよいのですが、functionノードで端的に行う場合にはこうしています。
- switch(loopSwitch)ノード
カウンタのmsg.temp.iが、最大数のmsg.temp.cntとなるまで、処理分岐します。
- function(loopCnt)ノード
カウンタのmsg.temp.iを1加算しています。
※繰り返し処理にかかわらず、結局は、ノードの組み合わせで自由になんでもできますので、使いやすいノードを使い、使い方が難しいものは、functionノードで自力でJava Scriptを使って制御しています。