亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

把JS里面的clearInterval(obj.timer)與fn()順序對調后會無法執行fn()是為什么?

代碼如下:

if?(iTarget?==?icur)?{
if(fn){fn();}
clearInterval(obj.timer);
}


正在回答

1 回答

因為如果這樣先判斷有fn()方法時,會先執行調用fn()方法然后執行clearintval(),但是這時候瀏覽器并不會等到fn()方法執行完才去調用clearintval().它會直接清除fn()內的定時器。正好老師下節課會講到同時調用兩個?startMove()方法時會遇到的問題,這時只會執行第二個startMove()方法而不會一個一個調用也不會同時調用,原因就是第一個startMove()方法還沒執行完第二個startMove()里的clearintval()就把第一個startMove()計時器清除了。這和你問的問題應該是同一個道理吧。個人理解,適當參考。http://img1.sycdn.imooc.com//598821e60001322119200930.jpg

3 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

把JS里面的clearInterval(obj.timer)與fn()順序對調后會無法執行fn()是為什么?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號