var si=setInterval(callbackfunc,time)中callbackfunc传参数问题(循环执行)
var st=setTimeout(callbackfunc,time);定时执行
如何循环执行和定时执行
clearInterval(si);
clearTimeout(st);
一般是格式如: setInterval(show,2000)
function show(){
alert("dd");
}
如果传参数可以这么写:
window.setInterval(function(){show(param);}, 2000);
但是有个问题 就是设计到动态的比如说show(i,param)
实验:
1.全局变量
var i=0;
function show(){
setInterval(fiunction(){showAlert(i);}, 1000); //每次循环执行的时候 i都是0
//setInterval(fiunction(){showAlert();}, 1000); //每次循环的时候 i都是递增的
}
function showAlert(){
console.log(i++);
}
2.局部变量
function show(){
var i=0;
setInterval(fiunction(){showAlert(i);}, 1000); //每次循环执行的时候 i都是0
//setInterval(fiunction(){showAlert();}, 1000); //每次循环都是nan
}
function showAlert(i){
console.log(i++);
}
建议 如果是控制循环的话就 设置全局变量 i 如果是固定参数param的话就可以使用function (){showalert(param);}的方法了 。
注: setInterval(fiunction(){showAlert();}, 1000);和 setInterval(showAlert(), 1000);是没有分别的。