(section01-03 フレームアクションのメソッド定義と関数定義から抜粋)
中上級者向けの内容になりますが、関数を定義する方法には関数式を使うやり方もあります。関数式でもfunctionを使って関数を定義しますが、関数名を指定しない点に注目してください。関数名がないことから関数式で定義した関数は匿名関数あるいは関数リテラルと呼ばれます。
関数式の書式:
var 変数:Function = function (引数:データ型, 引数:データ型, ...):戻す値のデータ型{
//実行するスクリプト
}
次の匿名関数は引数の値を10倍した値を出力します。定義した匿名関数は、続く7行目で行っているように関数を代入した変数名にカッコを付けて、test(3)のように実行できます。
[:script:]値を10倍する匿名関数を定義する
[:script:]10倍した値を返す匿名関数を定義する
中上級者向けの内容になりますが、関数を定義する方法には関数式を使うやり方もあります。関数式でもfunctionを使って関数を定義しますが、関数名を指定しない点に注目してください。関数名がないことから関数式で定義した関数は匿名関数あるいは関数リテラルと呼ばれます。
関数式の書式:
var 変数:Function = function (引数:データ型, 引数:データ型, ...):戻す値のデータ型{
//実行するスクリプト
}
次の匿名関数は引数の値を10倍した値を出力します。定義した匿名関数は、続く7行目で行っているように関数を代入した変数名にカッコを付けて、test(3)のように実行できます。
[:script:]値を10倍する匿名関数を定義する
var test:Function = function (a:Number):void{
var ans:Number = a * 10;
trace(ans);
};
//匿名関数を使う
test(3); //出力:30
値を戻す匿名関数も定義できます。次の匿名関数は引数の値を10倍した値を返します。[:script:]10倍した値を返す匿名関数を定義する
var test:Function = function (a:Number):Number{
var ans:Number = a * 10;
return ans;
};
var ans:Number = test(5);
trace(ans); //出力:50




![ActionScript 3.0辞典 [FlashPlayer10/9対応]](http://ecx.images-amazon.com/images/I/51ry2e8HtIL._SL75_.jpg)



