第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

什么是sleep()的JavaScript版本?

什么是sleep()的JavaScript版本?

暮色呼如 2019-05-21 15:53:08
什么是sleep()的JavaScript版本?有沒有sleep比使用以下pausecomp函數更好的方法來設計JavaScript (從這里開始)?function pausecomp(millis){     var date = new Date();     var curDate = null;     do { curDate = new Date(); }     while(curDate-date < millis);}這不是JavaScript中Sleep的重復- 動作之間的延遲 ; 我希望在函數中間實現真正的睡眠,而不是在執(zhí)行代碼之前的延遲。
查看完整描述

4 回答

?
千萬里不及你

TA貢獻1784條經驗 獲得超9個贊

認為想要執(zhí)行一個動作,等待,然后執(zhí)行另一個動作是完全合理的。如果您習慣于使用多線程語言編寫,那么在線程喚醒之前,您可能會在一段時間內執(zhí)行執(zhí)行操作。

這里的問題是JavaScript是一個基于事件的單線程模型。雖然在特定情況下,讓整個引擎等待幾秒鐘可能會很好,但總的來說這是不好的做法。假設我想在編寫自己的函數時使用你的函數?當我打電話給你的方法時,我的方法都會凍結。如果JavaScript可以某種方式保留你的函數的執(zhí)行上下文,將它存儲在某個地方,然后將其恢復并稍后繼續(xù),然后就可以發(fā)生睡眠,但這基本上就是線程化。

因此,您幾乎堅持其他人的建議 - 您需要將代碼分解為多個功能。

那么你的問題是一個錯誤的選擇。沒有辦法以你想要的方式睡覺,你也不應該尋求你建議的解決方案。


查看完整回答
反對 回復 2019-05-21
?
絕地無雙

TA貢獻1946條經驗 獲得超4個贊

僅適用于debug / dev,如果它對某人有用,我會發(fā)布


有趣的東西,在Firebug(可能還有其他js控制臺)中,只有在指定的睡眠時間后才會進入,


function sleepFor( sleepDuration ){

    var now = new Date().getTime();

    while(new Date().getTime() < now + sleepDuration){ /* do nothing */ } 

}

使用示例:


function sleepThenAct(){ sleepFor(2000); console.log("hello js sleep !"); }


查看完整回答
反對 回復 2019-05-21
  • 4 回答
  • 0 關注
  • 564 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

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

公眾號

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