js的sleep方法


sleep函數作用是讓線程休眠,等到指定時間在重新喚起。

var beginTime=new Date().getTime();
while(new Date().getTime()  < beginTime + 5000) {   }
console.log("1")

5秒之后輸出1,不過這樣的話CPU占用會很高,如果開着占CPU很高的程序(如有一堆flash的頁面),很容易被卡死。

  • 方法1:
function sleep1(ms, callback) {
    setTimeout(callback, ms)
}
//sleep 1s
sleep1(1000, () => {
    console.log(1000)
})
  • 方法2:
function sleep2(ms) {
    return new Promise(function(resolve, reject) {
        setTimeout(resolve, ms)
    })
}
sleep2(1000).then(() => {
    console.log(2000)
})
  • 方法3:
function sleep3(ms) {
    return new Promise(function(resolve, reject) {
        setTimeout(resolve, ms)
    })
}
async function init() {
    await sleep3(1000);
}
init().then(() => {
    console.log(3000)
})

參考文章


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM