JS:setInterval()やsetTimeout()で指定する関数に引数を渡す
2013.06.12
久しぶりにJavaScriptを書いていて少し迷ったところ。
setInterval()やsetTimeout()についてです。


var sample = setInterval( intervalEvent, 1000);

例えば上記のようなsetInterval関数で、
実行する関数「intervalEvent」に引数を渡したい場合、

var sample = setInterval( intervalEvent(data1), 1000);

と普段通り書いても上手くいきません。

次のように書くことで引数を渡すことができます。


1.無名関数内で改めて関数実行
無名関数の中でなら普段通りの記述ができます。

var sample = setInterval( function(){ intervalEvent(data1); }, 1000);


2.文字列で指定
「'intervalEvent()'」と文字列での指定もできます。なので、

var sample = setInterval('intervalEvent('+ data1 +')', 1000);
| コメント(2)