for ステートメント

指定された条件が真 (true) の間、複数のステートメントから構成されるブロックを繰り返して実行します。

for (initialization; test; increment)
...statement

引数

  • initialization
    必ず指定します。 任意の式を指定します。 この式は、ループを実行する直前に一度だけ実行されます。

  • テスト
    必ず指定します。 ブール式を指定します。 test が真 (true) の場合は、statement が実行されます。 test が偽 (false) になると、ループの実行は終了します。

  • increment
    必ず指定します。 任意の式を指定します。 インクリメント式は、ループ内のブロックの実行が終わるたびに実行されます。

  • statement
    省略可能です。 test の評価が真 (true) の場合に実行するステートメントを指定します。 複合ステートメントを指定することもできます。

解説

特定の回数だけ処理を繰り返す場合は、for ループを使います。 for ループは、配列を繰り返し処理する場合や、順次処理を実行する場合に便利です。

条件式はループが実行される前にテストされます。 したがって、for ステートメントは 0 回以上実行されます。

for ループ ステートメント ブロック内の任意の行で、break ステートメントを使用してループから抜けることができます。同様に、任意の行で continue ステートメントを使用して、ループの次の反復処理に制御を移すことができます。

使用例

次の例では、for ステートメントは、かっこで囲まれたステートメントを次のように実行します。

  • 最初に、変数 i の初期値が評価されます。

  • 次に、i の値が 9 以下であれば、document.write ステートメントが実行され、i が再評価されます。

  • i が 9 よりも大きい場合には、条件が false になり、制御がループの外に移ります。

// i is set to 0 at the start and is incremented by 1 at the
// end of each iteration.
// The loop terminates when i is not less than or equal to
// 9 before a loop iteration.
var s = "";
for (var i = 0; i <= 9; i++)
{
    s += i + " ";
}

print (s);
// Output: 0 1 2 3 4 5 6 7 8 9

for ステートメントの式はすべて省略できます。 次の例では、for ステートメントで無限ループを実装し、break ステートメントを使用してループを終了します。

var s = "";

var j = 0;
for (;;)
{
    if (j >= 5)
        {
        break;
        }
    j++;
    s += j + " ";
}

print (s);
// Output: 1 2 3 4 5

必要条件

Version 1

参照

参照

for...in ステートメント

while ステートメント