- 2008-08-03 (日)
- Action Script 3.0
配列処理と言えば、ループ処理を使って
ARR=[1, 2, 3, 4, 5];
for (var i:uint=0; i<ARR.length; i++) {
ARR[i]
~何らかの処理
}
こんな感じで処理する方法が一般的(?)だ。
少なくとも僕は毎回こんな感じでスクリプトを組んでいる。
でも、AS3を勉強している時に別の方法も知ったので一応メモ。
forEach() メソッドというものだ。
package {
/*============================================================
クラス読み込み
============================================================*/
import flash.display.StageScaleMode;
import flash.display.StageAlign;
import flash.display.Sprite;
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
public class Main extends Sprite {
private var ARR:Array;
private var count:uint=0;
private var all:uint=0;
private var TXT:TextField;
//コンストラクタ
public function Main() {
//ステージサイズ設定
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
ARR=new Array();
for (var i:uint=1; i<=50; i++) {
ARR.push(i);
}
ARR.forEach(forEachSample); //forEach メソッドを実行
//forEach 用のコールバック関数
//引数は必ず下記のように3つを記述する
function forEachSample(no:uint, i:int, arr:Array) {
all+=no;
count++;
}
//テキストフィールド作成
TXT = new TextField();
with (TXT) {
autoSize = TextFieldAutoSize.LEFT;
multiline = true;
wordWrap = true;
text = "カウント:" + count+"/合計:"+all+"\n";
text += "配列:\n";
text += ARR.join(" / ");
width = 400;
mouseEnabled = false; //マウスイベントを受け取らなくする
}
addChild(TXT);
}
}
}
※戻り値はなし
- 次の記事: カスタムイベントのサンプルを作ってみた
- 前の記事: 基本中の基本をメモしておく
コメント:0
トラックバック:0
- この記事のトラックバックURL
- http://god.xsrv.jp/__mt/mt-tb.cgi/1317
- トラックバックを受ける記事
- 配列処理 forEach() メソッドのメモ書き from 1ka2ka.com