tmlibの練習ブログ

自分流にtmlibを触っていきます。分かったことを解説。入門用になれば…?

デフォルトのmain.jsをいじる12,関数の引数について。

前回に続き、関数の発展的な事を学ぶ。


関数には、引数(ひきすう)というものを渡せる。

aaa = function(mozi){alert(mozi);} // #引数をmoziとして受けとる。
aaa("アラートだよ"); // #引数を渡す


関数の実行を表わす( )の中に、渡したいデータを書く(変数でももちろんOK)
すると、function(変数)といった形で、"変数"がそのデータを受け取る。
その変数は、関数の{ }内だけで使える。
(いわば自動的にvarが付いてる状態→var 変数のvarって?(変数のスコープについて) - tmlibの練習ブログ)


何を引数にするかで、処理結果を変える事ができる。
もし関数内が計算式だった場合、1を引数に取るか100かではもちろん、計算結果はそれぞれ異なっていく。

aaa = function(kazu){alert( kazu * kazu);}
aaa(100); // #数値なら何でも渡せて、応用可能


今までもmain.jsで、
getKey("z")やtm.app.Sprite("CAT")
と、引数を効果的に使ってきた。


ちなみに引数には、別の関数を渡すこともできる(受け取る側の引数に、関数が代入される)
main.jsがしてきた

/*
 * メイン処理(ページ読み込み後に実行される)
 */
tm.main(function() {
    // アプリケーション作成
    var app = tm.app.CanvasApp("#world");
   // …省略
});

とはまさに、そういう事である。
(tm.mainに引数として関数を渡している。そして恐らく、ページ読み込み後に、関数は実行されるのだろう)


次回はいよいよ、tmlibに用意されたクラス(オブジェクト)に新しい関数を代入してみる。


次回:デフォルトのmain.jsをいじる13,既存クラス(オブジェクト)に関数追加 - tmlibの練習ブログ