setInterval()与clearInterval()的用法

setInterval(function,interval[,arg1,arg2,......argn]):标准动作面板中setInterval函数的默认语法

setInterval(object,methodName,interval[,arg1,arg2,.....argn]):专家模式动作中使用的方法

clearInterval(id_of_setinterval):参数是必须的,为setInterval返回的ID值

       其中的参数function是一个函数名或者一个对匿名函数的引用。object参数指定从Object对象派生的对象。methodName制定 object参数中要调用的方法。interval制定对function或methodName调用两次之间的时间,单位是毫秒。后面的arg1等是可选的参数,用于制定传递给function或是methodName的参数。

//每隔5秒刷新
var i = 0;
setInterval(function(){
    i++;
    console.log(i);	
}, 5*1000);


//例子三(function中含有参数)
function show2(str){
    trace(str);
}
setInterval(show2,2000,"每隔2秒我就会显示一次");

       在使用setInterval方法时,每一次启动都需要对setInterval方法返回的值做一个判断,判断是否是空值,若不是空值,则要停止定时器并将值设为空,再重新启动,如果不进行判断并赋值,有可能会造成计时器循环调用,在同等的时间内同时执行调用的代码,并会随着代码的运行时间增加而增加,导致功能无法实现,甚至占用过多资源而卡死奔溃。因此在每一次使用setInterval方法时,都需要进行一次判断。

//例子二(setInterval返回一个Id值)
<body>
    <button onclick="start()">按钮一</button>
    <button onclick="stop()">按钮二</button>
    <script type="text/javascript">
        var interval = null;//计时器
		var i = 0;
		function start(){//启动计时器函数
			if(interval!=null){//判断计时器是否为空
				clearInterval(interval);
				interval=null;
			}
			interval = setInterval(overs,1000);//启动计时器,调用overs函数,
		}
			
		function overs(){
			i++;
			console.log(i);	
		}
			
		function stop(){		
			clearInterval(interval);
			interval = null;
		}
	</script>
</body>
//例子三(function中含有参数)
function show2(str){
    trace(str);
}
setInterval(show2,2000,"每隔2秒我就会显示一次");

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值