今天在優化項目的代碼時候用到了遞歸方法,然後看到網上一個有趣的題目:怎麼用setTimeout模擬setInterval行爲?
感覺挺過癮的,就去實現了一下,果然有趣,直接上代碼吧:
//實現的方法挺簡單的 ,如下代碼
//參數: 毫秒 需要執行的方法
function setInter(s,fn){
let timeOut = (s,fn)=>{
setTimeout(()=>{
fn();
timeOut(s,fn);
},s)
}
timeOut(s,fn);
}
//調用上面的方法
setInter(3000,()=>{console.log("hello world!")})
代碼雖然簡單,但是也踩了一點坑,但最後還是用這麼點代碼實現了,終於不會提示出現內存溢出了!!