我們需要執行的for循環,
for(let i = 0,len = 5;i < len;i++){
... //需要執行的事件
}
當我們需要循環這個for循環時,可以將這個for循環封裝成一個函數。
function for_test(){
for(let i = 0,len = 5;i < len;i++){
... //需要執行的事件
}
}
然後當for循環 循環到最後一個時,重新調用for_test()函數,這樣子就可以無限的調用for循環
function for_test(){
for(let i = 0,len = 5;i < len;i++){
... //需要執行的事件
if(i==len-1){
setTimeout(()=>{
for_circle();
},1)
}
}
}
循環中,每個第i次都有要執行的事件,當然i==len-1(for循環的最後一次)時也不例外,所以我們需要等待這個事件執行完後才能重新調用for_test()函數,否則會出現內存溢出的現象,導致瀏覽器崩潰。
這裏的時間延遲多少根據你for循環所需要執行的事件時間而定,一般情況下,只要for循環執行的事件不帶有時間延遲,那麼這裏的延遲時間1毫秒就夠了。