作者gg90052 (Teddy)
看板Flash
標題[問題] 關於setInterval函式
時間Tue Apr 14 23:55:31 2009
想請問一下關於setInterval的時間間隔函數有沒有時間的上限?
因為我可能需要每30min.1hr.3hr執行一次
所以想問問看有沒有人知道? 謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.160.177.159
1F:推 cjcat2266:3hr=180min=10800s=10800000ms 04/15 00:10
2F:→ cjcat2266:Number可用53bits來表示整數部分 04/15 00:10
3F:→ cjcat2266:2^53遠大於10800000,所以請放心用吧 04/15 00:11
4F:推 cjcat2266:事實上,2^53ms等於104249991天 04/15 00:13
5F:→ cjcat2266:所以你可以放104249991天都沒問題 04/15 00:13
6F:→ gg90052:再問一個問題,因為如果用變數更改setInterval的interval 04/15 01:16
7F:→ gg90052:它執行的速率還是不變,要怎麼修改setInerval的寫法才行呢 04/15 01:17
8F:推 cjcat2266:無解,除非用clearInterval消除連續呼叫,然後再開一個 04/15 01:44
9F:→ cjcat2266:如果你是用AS3可以用Timer class,他有個delay property 04/15 01:44
10F:→ cjcat2266:Timer class應該是拿來取代setInterval用的 04/15 01:45
11F:→ cjcat2266:因為Time class的API設計得很好用,setInterval相對死板 04/15 01:45
12F:推 cjcat2266:其實如果你只是要30min, 1hr, 或3hr 04/15 01:47
13F:→ cjcat2266:其實還是可以用setInterval,就把它設成30min叫一次 04/15 01:48
14F:→ cjcat2266:弄個變數N,函式設計成"呼叫次數是N的倍數才執行某事" 04/15 01:49
15F:→ cjcat2266:這樣1hr就是N = 2, 3hr就是N = 6 04/15 01:49
16F:→ gg90052:喔喔 懂了懂了 感謝CJ大 04/15 02:12