for...in ステートメント
オブジェクトの各プロパティ、または配列の各要素に対して、1 つ以上のステートメントを実行します。
for (variable in [object | array])
statements
引数
- variable
必ず指定します。object のすべての要素を順に格納するために使用する変数を指定します。 - object, array
省略可能です。反復処理の対象となるオブジェクトの名前または配列を指定します。 - statements
省略可能です。object のプロパティまたは配列の各メンバに対して実行する 1 つ以上のステートメントを指定します。複合ステートメントを指定することもできます。
解説
ループの各反復処理の実行前に、object の次の要素または array の次の要素が variable に代入されます。この変数は、ループ内のステートメントで object のプロパティまたは array の要素と同様に処理を行うことができます。
オブジェクト全体に対して反復処理を行う場合は、オブジェクトのメンバが variable に代入される順序を指定したり変更したりすることはできません。
使用例
次のコードは、for ... in ステートメントで、オブジェクトを連想処理可能な配列として使用する例です。
function ForInDemo(){
// 変数を作成します。
var a, key, s = "";
// オブジェクトを初期化します。
a = {"a" : "アテネ" , "b" : "ベオグラード", "c" : "カイロ"}
// プロパティを繰り返し実行します。
for (key in a) {
s += a[key] + "<BR>";
}
return(s);
}
**メモ **コレクションのメンバに対して反復処理を行う場合は、enumerator オブジェクトを使用します。