if...else ステートメント
条件式の値を評価し、条件に応じて適切なステートメントを実行します。
if (condition)
statement1
[else
statement2]
引数
condition
必ず指定します。 ブール式を指定します。 この式が NULL または undefined の場合は、偽 (false) となります。statement1
必ず指定します。 condition が真 (true) の場合に実行するステートメントを指定します。 複合ステートメントを指定することもできます。statement2
省略可能です。 condition が偽 (false) の場合に実行するステートメントを指定します。 複合ステートメントを指定することもできます。
解説
statement1 および statement2 に対し、必ず中かっこ ( { } ) で囲む習慣を付けておくと、コードが読みやすくなり、不注意によるエラーも減らすことができます。
使用例
たとえば、次のコード例のような場合、最初の if ステートメントに対して else を使用しているつもりでいても、実際には else は 2 つ目の if ステートメントに使用されます。
var z = 3;
if (x == 5)
if (y == 6)
z = 17;
else
z = 20;
次のコードは、上の例と同じ結果になります。
var z = 3;
if (x == 5)
{
if (y == 6)
z = 17;
else
z = 20;
}
次のコード例のように書き換えると、あいまいさを排除できます。
var z = 3;
if (x == 5)
{
if (y == 6)
z = 17;
}
else
z = 20;
同様に、statement1 にステートメントを追加する場合も、次のコード例のように中かっこを記述しなければ、エラーが発生します。
if (x == 5)
z = 7;
q = 42;
else
z = 19;
この場合は、if ステートメントと else ステートメントの間に複数のステートメントが記述されているため、構文エラーになります。 if と else の間のステートメントを必ず中かっこで囲む必要があります。