For()関数は、カンマで区切った4つの引数をとります。最初の3つの引数はループを何回繰り返すかを指定するためのもので、4つ目の引数が繰り返し実行する内容です。
次に、For()の基本的な構文を示します。
For( initialization, while, iteration, body );
たとえば、次のスクリプトは0~20までの整数を合計しています。
s = 0;
For( i = 0, i <= 20, i++, s += i );
このスクリプトは次のように機能します。
s = 0; |
s変数を0に設定する。後でこの変数に合計が代入されます。 |
For( |
For()ループを開始する。 |
i = 0, |
ループの制御カウンタの変数(i)を0に設定する。この式は一度だけ実行されます。 |
i <= 20, |
ループが開始されるたびにiを20と比較する。iが20以下である限りループの評価を繰り返し、iが20を超えるとループを抜けます。 |
i++, |
ループの最後にiを1だけ増やす。このステップはループのbody部分(次の行)の評価後に実行されます。 |
s += i |
ループのbody部分を評価する。iの値をsに加えます。bodyを実行した後、 |
); |
ループを終了する。 |
常に真と評価されるForループは無限ループを生成し、終わることがありません。スクリプトを停止するには、WindowsではEscキーを、macOSではcommandキーとピリオドキーを同時に押します。または、[編集]>[スクリプトの停止]を選択します。macOSでは、スクリプトの実行中のみ、[編集]>[スクリプトの停止]が使用可能になります。
JSLのFor()ループは、C(およびC++)の場合と句読法は異なりますが、同様に機能します。
ヒント: Cをご存知のユーザは、セミコロンとカンマの使い方の違いに注意してください。JSLの場合、For()は、カンマで引数を区切り、セミコロンで式を結合する関数です。Cの場合、forは、セミコロンで引数を区切り、カンマで式を結合する特別な節です。