ActionScriptでオブジェクト、または配列の要素を繰り返し処理のメモです。
繰り返しの処理にはfor-in文、for each-in文があります。それぞれの違いは生成する要素が、for-in文ではキーを生成して、for each-in文では値を生成します。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
var object:Object = new Object();
object[0] = "りんご";
object[1] = "ばなな";
object["integer"] = 10;
object["array"] = new  Array("test1", "test2");
 
//キーを生成
for (var key:* in object) {
	trace(key);
}
 
//値を生成
for each (var value:* in object) {
	trace(value);
}

それぞれの出力は次のようになります。

1
2
3
4
5
6
7
8
9
10
11
//for-inの場合
0
1
array
integer
 
//for each-inの場合
りんご
ばなな
test1,test2
10

キーと値の両方を扱いたい場合には、for-in文でキーを生成して、キーから値を呼び出します。

1
2
3
4
for (var key:* in object) {
	trace(key);
	trace(object[key]);
}