2009/10/13 久米
関数は、処理をまとめた入れ物です。(算数や数学でいう関数とはまったく別物です。名前だけが同じ。)
関数の種類には、次の2種類があります。ここでは自分で作る関数についてお話しします。
使う側 | 関数側 | |
・・・ |
→ ← |
function aisatu(xx:String) { textField.text=xx+"さんこんにちは"; } |
関数を使うと次の点で便利です。
関数の定義方法 | function 関数名(引数,・・・):戻り値の型 {//引数が必要なければ()の中は省略 処理; 処理; ・・・ return 戻り値; //戻り値なければこの文は省略 } |
関数名 (変数名と同じ) |
|
引数とは |
|
戻り値とは |
|
引数と戻り値のありなしの例
関数例 | 使用例 | 備考 | |
引数なし 戻り値なし |
function aisatu():void { textField.text="山田さんこんにちは"; } |
aisatu(); | 戻り値がない時は 戻り値の型を voidと書く |
引数あり 戻り値なし |
function aisatu(xx:String):void { textField.text=xx+"さんこんにちは"; } |
aisatu("山田"); | |
引数なし 戻り値あり |
function aisatu():String { var x:String= "山田さんこんにちは"; return x; } |
a=aisatu(); textField.text=a; |
|
引数あり 戻り値あり |
function aisatu(xx:String):String { var x:String = xx+"さんこんにちは"; return x; } |
a=aisatu("山田"); textField.text=a; |
具体例
関数例 | 使用例 | |
例1消費税も あわせた金額を 計算する関数 |
function nedan(yyy:int) { var shohizei:int; var gokei:int; shohizei=yyy*0.05; gokei=yyy+shohizei; return gokei; } |
var yen:int= nedan(5380); |
例2 2つの値の 合計 を計算し 返す関数 |
function gokei(a:int, b:int){ var x:int=a+b; return x; } |
var yen:int= gokei(100, 300); trace("合計で"+yen+"円です"); |
例3 |
function scaleHenka() kaku_mc.scaleX*=0.9; kaku_mc.scaleY*=0.9; } |
kaku_mc.addEventListener(MouseEvent.CLICK, clickHandler); |
例題1 山田さんこんばんは と表示する関数konba()を作って、呼び出してみよ。
例題2 function konba(a:String) で aさんこんばんは と表示する関数を作って、呼び出してみよ。
例題3 function konba(a:String)で aさんこんばんは という文字列がreturnされる関数を作って、呼び出してみよ。
例題4 消費税が10%となったときの関数を作って、使ってみよ。
例題5 5つ値の合計をして返す関数を作って、使ってみよ。
演習6 scaleHenka関数の縮小率を引数にした関数を作ってみよ。
演習7 上記で、clickすると2.0倍、rollOverすると0.8倍になるようなスクリプトを記述せよ。