Visit Mozilla.org

Core JavaScript 1.5 Reference:Statements:block

出典: MDC


目次

[編集] 概要

ブロック文は 0 個以上の文をグループ化するのに使われます。ブロックは中括弧 (波括弧) の組で区切られます。

実装されたバージョン: JavaScript 1.0, NES 2.0
ECMA バージョン: ECMA-262

[編集] 構文

{
   statement_1
   statement_2
   ...
   statement_n
}

[編集] パラメータ

statement_1, statement_2, statement_n
ブロック文の中でグループ化される文。

[編集] 説明

この文は通常、制御フロー文 (たとえば、ifforwhile など) とともに使われます。例:

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 を出力したでしょう。