javascript中不提供sleep功能如何實(shí)現(xiàn)這個(gè)功能
有一種思路是跑一段循環(huán)體,讓程序空耗CPU的時(shí)間來(lái)實(shí)現(xiàn)延時(shí)。這有一個(gè)不足,不同的機(jī)器CPU的執(zhí)行速度是不一樣的,這很容易導(dǎo)致的慢的機(jī)器會(huì)SLEEP很久。
筆者從別的論壇看到一種機(jī)智的解決方法,在不同的機(jī)器上的執(zhí)行速度是一致的。在此與大家共享。
function sleep(n)
{
var start=new Date().getTime();
while(true) if(new Date().getTime()-start>n) break;
}
當(dāng)然這個(gè)方法依然是靠空轉(zhuǎn)CPU的方法。
還有一個(gè)方法是使用setTimeout()函數(shù)。
函數(shù)語(yǔ)法如下:setTimeout(code,millisec)
使用范例:
var t=setTimeout("alert('5 seconds!')",5000)
這段代碼的作用是millisec后執(zhí)行代碼code,范例中就是5000毫秒后執(zhí)行了alert函數(shù)。也可以達(dá)到和sleep相同的效果。
相關(guān)文章
js open() 與showModalDialog()方法使用介紹
項(xiàng)目開發(fā)中經(jīng)常要用到j(luò)s open() 與showModalDialog()方法,下面有個(gè)不錯(cuò)的示例,喜歡的朋友可以研究下2013-09-09JavaScript中發(fā)出HTTP請(qǐng)求最常用的方法
JavaScript具有很好的模塊和方法來(lái)發(fā)送可用于從服務(wù)器端資源發(fā)送或接收數(shù)據(jù)的HTTP請(qǐng)求。這篇文章主要介紹了JavaScript中發(fā)出HTTP請(qǐng)求最常用的方法,需要的朋友可以參考下2018-07-07table對(duì)象中的insertRow與deleteRow使用示例
本文為大家介紹下table對(duì)象insertRow deleteRow的使用示例,適合新手朋友們2014-01-01基于JS實(shí)現(xiàn)動(dòng)態(tài)跟隨特效的示例代碼
這篇文章主要介紹了如何利用JavaScript實(shí)現(xiàn)動(dòng)態(tài)跟隨特效,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)JS有一定的幫助,感興趣的小伙伴可以了解一下2022-06-06微信小程序如何修改本地緩存key中單個(gè)數(shù)據(jù)的詳解
這篇文章主要介紹了微信小程序如何修改本地緩存key中單個(gè)數(shù)據(jù),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04深入理解JavaScript系列(1) 編寫高質(zhì)量JavaScript代碼的基本要點(diǎn)
才華橫溢的Stoyan Stefanov,在他寫的由O’Reilly初版的新書《JavaScript Patterns》(JavaScript模式)中,我想要是為我們的讀者貢獻(xiàn)其摘要,那會(huì)是件很美妙的事情2012-01-01JavaScript設(shè)計(jì)模式之單例模式實(shí)例
這篇文章主要介紹了JavaScript設(shè)計(jì)模式之單例模式實(shí)例,本文用一個(gè)實(shí)際例子講解JavaScript中的單例模式,需要的朋友可以參考下2014-09-09javascript實(shí)現(xiàn)blob加密視頻源地址的方法
這篇文章主要介紹了javascript實(shí)現(xiàn)blob加密視頻源地址的方法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-08-08javascript瀑布流布局實(shí)現(xiàn)方法詳解
這篇文章主要介紹了javascript瀑布流布局實(shí)現(xiàn)方法,結(jié)合實(shí)例形式較為詳細(xì)的分析了JavaScript實(shí)現(xiàn)瀑布流布局的樣式與具體功能代碼,需要的朋友可以參考下2016-02-02