Re: [問題] function 裡的 setTimeout 與 變數
※ 引述《TonyQ (沉默是金)》之銘言:
: 前者在eval的時候是設了一個全域變數 isWait ,
: 而後者讀到的時候 , 區域變數 isWait 已經不可見 , 所以出現undefined.
: 建議是採用function的方案來保存scope.
: ex.
: function b() {
: var isWait = true;
: setTimeout(function(){alert(isWait);}, 3000);
: }
我也想請教一下, 跟前一篇的問題類似
如果我要用 setTimeout() 作排程, 一次設定多個 event 要怎麼作?
例如我有以下資料
var s = [[10, "Hello"], [15, "World"], [3, "Hi"]];
想要在 3 秒後顯示 Hi
10 Hello
15 World
下面這樣的作法只能處理最後一筆, 換成 function 也一樣
for(i in s)
{
setTimeout("alert(s[i][1])", s[i][0]*1000);
}
目前的是用, 可行,但是有點怪
for(i in s)
{
callback = "alert('"+s[i][1]+"')";
setTimeout(callback, s[i][0]*1000);
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.168.2.160
推
10/07 17:53, , 1F
10/07 17:53, 1F
討論串 (同標題文章)