関数のパラメータの設定される順番
forked from テキスト表示用 (diff: 23)
ActionScript3 source code
/**
* Copyright yprops ( http://wonderfl.net/user/yprops )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/5d0F
*/
// forked from yprops's DebugText
package {
import flash.display.Sprite;
import flash.text.TextField;
public class DebugText extends Sprite {
private var args :Array = ["a","b","c","d","e","f"];
public function DebugText() {
addDeb(400, 300);
addDebLine("\n■配列[ " + args.toString() + " ]を用意し、関数のパラメータに、Array.shift()で引数を設定していく。");
addDebLine("fnc( array.shift(), array.shift(), arrayshift()... );");
fnc(
args.shift(),
args.shift(),
args.shift(),
args.shift(),
args.shift(),
args.shift()
);
addDebLine("\nAS2.0だと逆順に設定される(f,e,d,c,b,a となる)のでテストしてみたが、AS3.0では正順となった");
}
private function fnc(
p0 :*, p1 :*, p2 :*, p3 :*, p4 :*, p5 :*
) :void{
addDebLine("\n■関数が受けとった順番は");
addDebLine(p0 + ", " + p1 + ", " + p2 + ", " + p3 + ", " + p4 + ", " + p5);
}
//-------------------------------
private var deb :TextField;
private function addDeb(w:uint, h:uint) :void{
deb = new TextField();
deb.width = w;
deb.height = h;
deb.border = true;
deb.borderColor = 0;
deb.background = true;
deb.backgroundColor = 0x99ffffff;
deb.wordWrap = true;
deb.text = "beginDebugText-------\n";
addChild(deb);
}
private function addDebLine(str :String) :void{
deb.appendText(str + "\n");
deb.scrollV = deb.maxScrollV;
}
}
}
