javascriptのsetInterval(),setTimeout()についてです。
例えば
①
function hogeFunc1(){
hogeArg = "hoge";
handle = setInterval("CalledFunc(hogeArg)", 1000);
}
上のコーディングのように、
hogeFunc1からsetInterval()を使ってCalledFuncを呼び出した場合は正常に動作します。
だけど、
②
function hogeFunc1( hogeArg ){
handle = setInterval("CalledFunc(hogeArg)", 1000);
}
上のコーディングのように
hogeFunc1に渡した引数をそのままコール関数のCalledFuncに渡した場合
hogeArg is not defined
というエラーメッセージが表示され、動作しません。
こういう場合は、
③
function hogeFunc1(hogeArg){
hogeArg2 = hogeArg;
handle = setInterval("CalledFunc(hogeArg2)", 1000);
}
hogeFuncに渡した引数を、一度他の変数にセットして、その変数をコール関数に渡せば
正常に動作します。
何故②の場合にエラーが出るかは・・・
とりあえず今はそこまで知る必要がないので