| パッケージ | トップレベル |
| クラス | public class arguments |
| 継承 | arguments Object |
| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
引数は配列エレメントとして保存され、最初の引数は arguments[0] として、2 番目の引数は arguments[1] のようにアクセスされます。arguments.length プロパティは、関数に渡される引数の数を示します。関数で宣言された数と異なる数の引数が渡される場合もあります。
以前のバージョンの ActionScript とは異なり、ActionScript 3.0 には arguments.caller プロパティがありません。現在の関数を呼び出した関数への参照を取得するには、その関数への参照を引数として渡す必要があります。このテクニックの例については、arguments.callee の例を参照してください。
ActionScript 3.0 では、新しく ...(rest) キーワードが含まれています。arguments クラスではなく、このステートメントを使用することをお勧めします。
関連する API エレメント
| プロパティ | 定義元 | ||
|---|---|---|---|
| callee : Function
現在実行中の関数への参照です。 | arguments | ||
![]() | constructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクター関数への参照です。 | Object | |
| length : Number
関数に渡される引数の数です。 | arguments | ||
callee | プロパティ |
public var callee:Function| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
現在実行中の関数への参照です。
例 ( この例の使用方法 )
secondFunction() という名前の関数を呼び出す関数への参照を取得します。firstFunction() 関数は、ブール値引数 true を持ち、secondFunction() が firstFunction() を正常に呼び出していることを示して、各関数が他方の関数を相互に呼び出すことによる無限ループを防ぎます。
callSecond パラメーターが true であるため、firstFunction() は secondFunction() を呼び出し、自身への参照を唯一の引数として渡します。関数 secondFunction() は、データ型が Function で、caller という名前のパラメーターを使用して、この引数を受け取り、保存します。次に、secondFunction() 内から、caller パラメーターで firstFunction 関数を呼び出します。ただし、このとき callSecond 引数を false に設定します。
実行が firstFunction() に戻ると、trace() ステートメントが実行されます。これは、callSecond が false であるためです。
package {
import flash.display.Sprite;
public class ArgumentsExample extends Sprite {
private var count:int = 1;
public function ArgumentsExample() {
firstFunction(true);
}
public function firstFunction(callSecond:Boolean) {
trace(count + ": firstFunction");
if(callSecond) {
secondFunction(arguments.callee);
}
else {
trace("CALLS STOPPED");
}
}
public function secondFunction(caller:Function) {
trace(count + ": secondFunction\n");
count++;
caller(false);
}
}
}
length | プロパティ |
public var length:Number| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
関数に渡される引数の数です。関数で宣言された数よりも増減する場合があります。
arguments プロパティ(callee や length など)の使用方法を示しています。
package {
import flash.display.Sprite;
public class ArgumentsExample extends Sprite {
public function ArgumentsExample() {
println("Hello World");
}
public function println(str:String):void {
trace(arguments.callee == this.println); // true
trace(arguments.length); // 1
trace(arguments[0]); // Hello World
trace(str); // Hello World
}
}
}
Tue Jun 12 2018, 10:34 AM Z
継承されるパブリックプロパティを隠す
継承されるパブリックプロパティを表示