Flash CS4 Professional ActionScript 2.0

setTimeout 関数

setTimeout() : Number

ミリ秒単位で指定した遅延時間の経過後に、指定した関数を実行します。setTimeout() 関数は setInterval() 関数に似ていますが、setTimeout() は関数を一度呼び出した後、自動的に削除される点が異なります。

setTimeout() が関数を呼び出すのを防ぐために clearTimeout() メソッドを引き続き使用できるようにするには、setTimeout() 呼び出しの戻り値を必ず変数に代入してください。

対応バージョン : ActionScript 1.0、Flash Player 8

パラメータ

functionReference:Object - 実行する関数の名前。引用符や括弧を使用しないでください。また、呼び出す関数にパラメータを指定しないでください。たとえば、functionName を使用します。functionName()functionName(param) は使用しないでください。

delay:Number - 関数が実行されるまでの遅延時間 (ミリ秒単位)。

args:Object - 関数に渡すゼロ個以上の引数 (複数の引数はコンマで区切ります)。

戻り値

Number - 時間のプロセスに対する一意の数値識別子。

次の例では、setTimeout() を使用して 2 秒の遅延の後に my_delayedFunction という関数を呼び出します。ユーザーが Escape キーを押した場合には、戻り値を使って clearTimeout() を呼び出します。この例では、my_delayedFunction 呼び出し前にユーザーが Escape キーを押さない限り、2 秒の経過後に "two second delay" というストリングが出力されます。

var my_timedProcess:Number = setTimeout(my_delayedFunction, 2000, "two second delay");

function my_delayedFunction (arg1) {
 trace(arg1);
}

var escListener:Object = new Object();
escListener.onKeyDown = function() {
 if (Key.isDown(Key.ESCAPE)) {
 clearTimeout(my_timedProcess);
 }
};
Key.addListener(escListener);

この例を使用する場合、テスト環境では [制御]-[キーボードショートカットを無効] を選択してください。

関連項目

clearTimeout 関数, setInterval 関数