勉強したことのメモ

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_logo_unofficial-300x300
JavaScriptで多次元連想配列

JavaScriptで多次元の配列を作る際にいつも迷ってしまうのでメモ。 ■こう ...

javascript_logo_unofficial-300x300
JavaScriptでUNIXタイムスタンプ取得

UNIXタイムスタンプを用いた際、 年月日からすぐUNIXタイムスタンプを出した ...

mzl.qobqfuxq
GoogleMapで半径●メートルを範囲表示

GoogleMapでマーカーを立てて、そこから範囲●mもしくは●kmを円で表示さ ...

javascript_logo_unofficial-300x300
javascriptで月末日を取得

以前、PHPで月末日を取得したけれども javascriptで月末日を扱いたいケ ...

images
PHPの配列をファイルに保存してPHPやJSで呼び出す

PHPの配列をファイルとして保存し、別のページからPHPやJavaScriptで ...

javascript_logo_unofficial-300x300
クロスドメインのiframeで子フレームから親フレームにheightの値を渡す

やりたかった事は、 ・iframeで子フレームから親フレームにheightの値を ...

jquery_logo
chardin.jsを利用して注釈を入れる

簡易マニュアルとかでむっちゃ使えそう。 ■chardin.js http://h ...

images
ユーザーエージェントなどユーザー情報を取得する方法

上からUA、IP、ホスト名を取得。 $ua = $_SERVER['HTTP_U ...

mzl.qobqfuxq
GoogleMapでマーカーをまとめる

GoogleMapAPIでマーカーを複数表示し、近隣のエリアごとにまとめて表示さ ...

javascript_logo_unofficial-300x300
javascriptでゼロパティング

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