Re: [問題] 奇妙的setTimeout() 一次執行多個func …

看板Ajax作者 (for pete's sake)時間16年前 (2009/06/13 01:19), 編輯推噓0(004)
留言4則, 3人參與, 最新討論串2/3 (看更多)
使用setTimeout()可忽略bug。清楚明瞭的demo。 http://noking.googlepages.com/setTimeout.html 我找到原因了。結論是:setTimeout()是非常好用的bug兼容模式。 當你寫的code有bug出現,本來遇到嚴重bug,程式預設會中斷,不會再往下執行。 若是套用setTimeout(),則不會被中斷,而會往下執行。 其實想一想還滿合理的,setTimeout()類似系統排程, 不會因為其中一個排程當了,而導致其他排程也動不了。 再一個例子,比如我要執行a();b();c(); a()中有bug,本來會停止,b(),c()就都跑不到了, 可是使用奇妙的setTimeout()後,a()壞掉就算了,b(),c()還是可以跑到。 原來是因為我寫了一堆bug,難怪我覺得setTimeout()很好用。(汗) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.116.40.183 ※ 編輯: tomin 來自: 122.116.40.183 (06/13 01:25)

06/13 02:43, , 1F
這…似乎不是好習慣XD
06/13 02:43, 1F

06/13 02:45, , 2F
還是無法解釋為什麼修改順序都能執行第一個函式的狀況 囧a
06/13 02:45, 2F

06/13 10:41, , 3F
第一個我試不出來 偶爾發生 可能也只是類似的問題
06/13 10:41, 3F

06/15 00:43, , 4F
setTimeout 可以讓好幾個 function 一起跑,還蠻愛用的.
06/15 00:43, 4F
文章代碼(AID): #1ACeu_Z6 (Ajax)
文章代碼(AID): #1ACeu_Z6 (Ajax)