オブジェクト、配列の反復処理。
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]); } |