デフォルトの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に用意されたクラス(オブジェクト)に新しい関数を代入してみる。