#ref error :画像を取得できませんでした。しばらく時間を置いてから再度お試しください。
EachTimeは反復の毎回に評価を発生させるもの。OMLoopの内部的な話であって、外からは見えない。
入力
#ref error :画像を取得できませんでした。しばらく時間を置いてから再度お試しください。
反復1回につき複数プロセスを評価させたい場合は、eachTimeの入力をShift+>で増やして使う。
使用
反復において毎回の評価の発動を担う。
でもprint関数使わない限り、リスナーに表示されるのはFinallyから返ってきた値だけ。
でもprint関数使わない限り、リスナーに表示されるのはFinallyから返ってきた値だけ。
#ref error :画像を取得できませんでした。しばらく時間を置いてから再度お試しください。
- ListLoopが(A B C D)をもらう。1つ目のAを取りだす。
- eachTimeがom+関数を発動させて、計算した2をもらう(リスナーに表示されない)。
- ListLoopが2つ目のBを取りだす。
- eachTimeがom+関数を発動させて、計算した2をもらう(表示されない)。
- (あと2回繰り返し)
- ListLoopが5つ目はないので反復は終了。
- FinallyがListLoopが持ってるDをもらって出力する(表示される)。
例1:反復プロセスのチェック
チェックするにはprint関数使うと便利。
#ref error :画像を取得できませんでした。しばらく時間を置いてから再度お試しください。
- ListLoopが(A B C D)をもらう。1つ目のAを取りだす。
- eachTimeがprint関数を発動させて、ListLoopが今持ってる要素Aをリスナーに書きだす。
- (あと3回繰り返し)
- ListLoopが5つ目はないので反復は終了。
- FinallyがListLoopが持ってるDをもらって出力する。
例2:毎回の評価結果を集める
- ListLoopが(A B C D)をもらう。1つ目のAを取りだす。
- eachTimeが評価を発生させる
- print関数がListLoopが今持ってる要素Aをリスナーに書きだす。
- collectが1+1の結果の2をリストに入れる
- (あと3回繰り返し)
- ListLoopが5つ目はないので反復は終了。
- Finallyがcollectが集めて作ったリスト(2 2 2 2)をもらって出力する。
(反復の話とは関係ないけど、text-boxオブジェクト使うと出力が見やすいので便利。)