2017-01-30 88 views
-1

如何在javascript中編寫一個無限循環,以防止瀏覽器崩潰。我發現關於JavaScript的無限循環在互聯網上的兩件事情...如何編寫一個不會導致瀏覽器崩潰的無限循環?

for(;;){} 

和...

while(true){} 

與這兩個問題是,飛機墜毀我的電腦......我還以爲你能只放...

Loop; 

在代碼的結尾,它會通過代碼無限循環,但我錯了,什麼是正確的方法來遍歷代碼無限,不會我的兄弟崩潰wser?

+7

究竟是什麼你想完成什麼? – charlietfl

+4

'setInterval' ..? – Legends

+1

你不能。 Javascript中的無限循環將始終凍結瀏覽器,因爲它會阻止任何其他使用單線程的Javascript。你想達到什麼目的? –

回答

1

如果您需要編寫一些需要很長時間的JavaScript代碼(包括「永遠」),您應該將其移出主要Javascript內容並轉換爲WebWorker

var myWorker = new Worker('worker.js'); 

這可以讓你加載腳本worker.js和在並行運行一個單獨的上下文中執行它。

如果您只是需要一些,直到用戶退出頁面(或關閉瀏覽器)一次,而運行,那麼只需使用setInterval

var intervalID = window.setInterval(myCallback, 500); 

function myCallback() { 
    // Your code here 
} 
相關問題