[javascript] setTimeout() に引数として変数を与える方法

javascript(というかjquery) をいじっていたところ、ある関数を呼び出して指定時間後に
別の関数を呼び出したいことがあり、setTimeout()を使用することにしました。
処理の都合上、setTimeout()に引数として変数を指定したかったのですが、

setTimeout()は、引数に関数を指定するので、第一引数に変数をあててもうまくいきません。
setTimeout(F(変数),時間) みたいに関数F()にさらに引数を指定してもダメです。

Google先生にお伺いしてこちらのサイトを参考にしました。
引数有りのsetTimeout()について

なんと第三引数以降に変数いれればよい!
ですが、この書き方は、IEではエラーでるらしいので
IE考慮版らしい以下の書き方を採用しました。

setTimeout() に引数として変数を与える方法

関数hogehoge の中で引数として arg を渡して setTimeout() を実行したい。

このように、別の関数(↑では、piyopiyo)を噛ませるとイケルみたい。

幸せになれました~

★余談
JavaScript を学ぶ際に一番重要なのに、誤解されがちな setTimeout 系の概念

setTimeout()を使用する際、こちらをわかっていると意図通りの動作が期待できますね!

ではでは。


<広告>


コメントを残す

メールアドレスが公開されることはありません。