== 関数のまとめ == ---- 関数の定義は次の形式で行う {{{ function namae ( hikisuu ) { ... } }}} . namae の部分は関数名、hikisuuは引数。 . { と } に挟まれた部分を関数本体という。 関数本体は数行にわたっても良い。 通常、本体の1行目は var 宣言であり、最後は return文である。 本体は右にずらして揃えて書くのがよい。(インデントという) ---- === 構文 === . {{attachment:kansuu1.png}} ---- === 関数の実行 === function ... { ... } が読み込まれた時点では、関数の定義が行われるだけで、本体部分の実行はされない。 関数呼び出しが行われたとき、次の手順で実行される。 . (1) 引数の名前と、実際の引数の値が対応づけられる。 . (2) 関数本体内の文が順に実行される。 . (3) return文により値が返される。 ---- === return文 === 関数の実行は次のいずれかのとき終了し呼び出し元にもどります。 * 本体の最後まで処理されたとき * return文が実行されたとき 値を返すreturn文 {{{ return 式 ; }}} . return文がこの形で使われたとき、関数は指定された値を返します。 値を返さないreturn文 {{{ return; }}} . return文がこの形で使われたとき、関数は値を返しません。 ---- === 関数の利用 === 値を利用する関数呼び出し . 式の中で関数を記述し、その値を利用できます。 {{{ x = kansu1(...); }}} 値を利用しない関数呼び出し . 値を利用しないときは文の形で記述します。 {{{ kansu2(...); }}} ---- === 引数の個数 === 引数の数は2つ以上でもかまいません。 引数が2つ以上のときはカンマで区切って書きます。 {{{ function name ( param1, param2, param3 ) { ... } }}} 引数の無い関数も可能です。 引数がなくても括弧は必要です。 {{{ function name ( ) { ... } }}} 関数定義での引数の個数と、関数呼び出しでの引数の個数は一致しなければなりません。 引数が3つの関数を呼び出すときは {{{ a = name(2,4,6); }}} 引数が0個の関数を呼び出すときは {{{ b = name( ); }}} のような書き方になります。