勉強したことのメモ

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で月末日を取得

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

ページのリロード、ページの戻る

ブラウザのリロードと同じようなボタンを作成してほしいとの 要望があって色々あった ...

IE&javascriptの予約語

前にもひっかかった問題で、今日同じことで 時間をとられたのでメモ。 予約語? っ ...

IEでjavascript関数の初期値

あるJavaScriptの関数でchromeやfirefoxは正常に動いたけどI ...

HTML、javascriptソースの暗号化

サーバーサイドはソースを見られないけどクライアントサイドはソースを見られるので、 ...

lightboxでCSPエラーが発生

CSP(コンテンツセキュリティポリシー)設定を行っているサーバーでLightbo ...

JavaScriptで三項演算子の中に三項演算子

既存のソースを作り変えている際によく分からないソースがあった。 だいぶ書き換えて ...

javascriptでメモリ開放

今まで考えたこと無かったけどjavascriptを使う際は メモリ消費に気をつけ ...

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

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

JavaScriptで年齢計算

JavaScriptで年齢計算。 ■ソース function ageCalcul ...