概要
ブロック文は 0 個以上の文をグループ化するのに使われます。ブロックは中括弧 (波括弧) の組で区切られます。
構文
{ statement_1; statement_2; ... statement_n; }
引数
statement_1,statement_2,statement_n- ブロック文の中でグループ化される文
説明
この文は通常、制御フロー文 (たとえば、if、for、while など) とともに使われます。以下に例を示します。
while (x < 10) {
x++;
}
重要: JavaScript はブロックスコープを持ちません。ブロック内で導入された変数は、それを含む関数またはスクリプトがスコープとなり、変数を設定した効果は、そのブロック自体を超えて持続します。言い換えれば、ブロック文はスコープを導入しません。"スタンドアローン" なブロックは有効な構文ですが、JavaScript ではスタンドアローンなブロックを使わないほうがいいでしょう。なぜなら、もしブロックが C または Java のブロックのように何かすると思っているのなら、ブロックはあなたがそうすると思うようなことをしないからです。
var x = 1;
{
var x = 2;
}
alert(x); // 2 が出力されます
上記コードでは 2 が出力されます。なぜなら、条件文の中の文 var x が条件文の前の文 var x と同じスコープ内にあるからです。ブロックスコープを持つ C 言語や Java なら、同等なコードで 1 が出力されるでしょう。