empty ステートメント は、JavaScript の構文でステートメントが予期されている場合でも、ステートメントを提供しないために使用されます。
構文
;
説明
empty ステートメントは、JavaScript の構文がステートメントを必要とする場合でも、ステートメントが実行されないことを示すセミコロン (;) です。JavaScript が、単一のステートメントのみを許可していて、複数のステートメントをしたい場合、block statement を使用してください。いくつかのステートメントを単一のステートメントに結合します。
例
empty ステートメントは、ループステートメントで使用されることがあります。empty ループボディーを用いた次の例をご覧ください:
var arr = [1, 2, 3]; // Assign all array values to 0 for (i = 0; i < arr.length; arr[i++] = 0) /* empty ステートメント */ ; console.log(arr) // [0, 0, 0]
注意: empty ステートメントを使用する場合、意図的に使用していることををコメントするとよいでしょう。通常のセミコロンと区別するのがとても難しいからです。次の例では、おそらく意図せず使用されています:
if (condition); // 注意: この "if" では何も実行されません! killTheUniverse() // この関数が常に実行されます!!!
別の例: 中括弧 ({}) のない if...else ステートメント。three が true の場合、何も起こりません。four の値にも関係なく、else 内の launchRocket() 関数も実行されません。
if (one) doOne(); else if (two) doTwo(); else if (three) ; // nothing here else if (four) doFour(); else launchRocket();
仕様
ブラウザ実装状況
| 機能 | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|
| 基本サポート | (有) | (有) | (有) | (有) | (有) |
| 機能 | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|---|
| 基本サポート | (有) | (有) | (有) | (有) | (有) | (有) |