語法:
setTimeout(code, milliseconds, param1, param2, ...)
setTimeout(function, milliseconds, param1, param2, ...)
code/function | 必需。要調用一個代碼串,也可以是一個函數。 |
milliseconds | 可選。執行或調用 code/function 需要等待的時間,以毫秒計。默認爲 0。 |
param1, param2, ... | 可選。 傳給執行函數的其他參數(IE9 及其更早版本不支持該參數) |
場景: js前端函數定時的 自己調用自己,知道結束,直接調用了:
var time=1000;//定時時間 var startNum = 0;//初始化 var endNum = 20;//結束的值 var timeoutCheck = false;//開關按鈕 var parms="傳的參數,執行方法"; function time1(parms){ if(timeoutCheck){ console.log('結束了。'); return; } startNum ++; if(startNum >endNum ){ timeoutCheck=true; } console.log(startNum ); console.log(parms); setTimeout(time1, 5000 ,parms); }; time1(parms);
問題: setTimeout(time1, 5000 ,parms);
看到這裏寫法沒有,參數,參數,參數分開!!!!,按照文檔的來寫,不能寫成 setTimeout(time1(parms), 5000 );
他會立刻執行的,不會定時了!!!!!注意,一定按照接口文檔的來寫,別瞎想。