関数2
イテル on 07 31, 2009

ネストされた関数
関数に書く関数ってことかな。
この関数の中の関数は、親の関数からのみ使用できるらしい。
//メソッドiteru
public function iteru(){
//ネストされた関数ito()の呼び出し
ito();
//ネストされた関数ito()の定義
function ito(){
//関数本体をここに記入
}
}
関数iteruの中で、なんか面倒な処理をさせたい場合に、
面倒な処理を関数itoで実行してしまうって方法。
複雑な計算で、しかも同一関数内で何度も使いそうな場合に使えるかも。
ソースファイルレベルの関数
同一ファイル内のパッケージ本体外に書いた関数は、
同じファイル内からだったらどこからでも利用できるっぽい。
package{
//ここでもitoは使用可能
class iteru(){
//ここでもitoは使用可能
public function iteru(){
//ここでもitoは使用可能
}
}
}
function ito(){
//itoの処理
}
ちなみに、この関数itoには「function」や「internal」などの
アクセス制御指定子は含めてダメらしい。
関数内からの定義へのアクセス
どこに関数を置くかによって、そのプログラムの
定義(変数、メソッド、クラス、名前空間など)に
アクセスできるかが決まるらしい。
詳細説明省略。
値としての関数
関数はインスタンスによって表されるので、
値と同じように変数に代入したりすることができる。
function iteru(){
//プログラム
}
var ito=iteru;
こうすることによって、
ito();
とすると、結果的に「iteru()」を呼びだすことになるらしい。
関数リテラルのシンタックス
よくわからんかったw
var square = function(n){
return n * n;
}
square(5);
この方法はsetInterval関数と併用して使用されることがあるらしい。
package{
import flash.utils.setInterval;
public class iteruClock{
public function iteruClock(){
//1秒おきに関数リテラルを実行
setIntval(function(){
trace("iteru-tick!");
} , 1000 );
}
}
}
Popular Posts
Recent Posts
Recent Comments
- hidakaya: ありがとうご
- Infrared Heaters: `,* I am really than
- cakePHPでデータベースのテーブルにフィールドを追加したときに発生した問題2 | ダリの雑記:WEBプログラム版: ... http://oneday.te
- ボタンを作りまくる « sakaiden: ... ●ボタンを
- tm3242: 詳細ありがと

