勉強したことのメモ

webプログラマ見習いが勉強したことのメモ。

setTimeoutの注意点

      2014/07/03

javascriptのsetTimeoutにて変数を用いた際に

想定外の挙動を起こす場合があるとのこと。

参考を聞いた上で検証するも再現できず。

/*これは通る
setTimeout(function(){
alert('test')
},2000);
*/
/*これも通る
function alert_test (str) {
alert(str);
}
alert_test('hogehoge');
*/
//これは……通った。
function alert_test(test) {
var a = test;
setTimeout(function(){
alert(a);
},1000);
}
alert_test('hogehoge');

確認する。

//2013/05/16追記

function内で複数のsetTimeoutを用いた場合にエラーが発生した。

setTimeout内で変数を用いる場合はグローバル変数を使用する。

 - JavaScript

  関連記事

JavaScriptのvarとletとconst

JavaScript関連の調べ物をしていた際、変数の宣言時にvarではなくlet ...

CSSとJavaScriptでテキストのコピー防止

あるサイトで文言の意味が分からずGoogleで検索する為にコピペしようとするも、 ...

JavaScriptでAjaxを使わずにクロスドメインから変数を取得する

JavaScriptの配列形式で出力するファイルを作成しておき、 動的にソースに ...

画像をドラッグ&ドロップでアップロード

■2015/04/15追記 以下記事の方が新しくて詳しい。 http://tai ...

Ajaxでプラグイン無しのファイルアップロード

画像ファイルを添付できて、尚且つAjaxを用いた非同期通信のフォームを作りたかっ ...

JavaScriptで特定の範囲内から整数値を、数値が被らずにランダムに取り出す

やりたかったのは1位から20位のランキング内で JavaScriptを用いてラン ...

日付入力のテキストフォームにカレンダープラグインを導入

やりたかった事と制限は下記の通り。 ・日付入力のテキストフォームにカレンダープラ ...

javascriptの注意点

javascriptにてチェックボックスのチェック状況をチェックを ループでまわ ...

時間差をつけて処理する

setTimeout( 処理, タイムアウト時間 ); で、時間差をつけて処理が ...

javascriptでゼロパティング

月日をゼロパディングしたかったけど PHPとは違い、そういった関数は無かったので ...