两种定时器的写法及清除

js提供了一些原生的方法来实现延时功能,setInterval() setTimeout setImmediate() requestAnimationFrame()
1)window.setTimeout-----在指定的毫秒数到了之后,执行代码段或函数一次

var id = setTimeout(function(){},millisec)  //millisec都是必须的
clearTimeout(id)
 
//或者
function ff(){}
var id = setTimeout(ff,millisec)  //code   millisec都是必须的

2)window.setInterval----以固定的时间间隔重复调用一个函数或者代码段

var id = setInterval(code,millisec)  //code   millisec都是必须的
clearInterval(id)

3)window.setImmediate-----把一些需要长时间运行的操作放在一个回调函数里,在浏览器完成后面的其他语句后,就立刻执行这个回调函数,目前只有IE10支持

var immediateID = setImmediate(func, [param1, param2, ...]);   //参数传给func
var immediateID = setImmediate(func);
clearImmediate(immediateID)

4)window.requestAnimationFrame: 告诉浏览器您希望执行动画并请求浏览器在下一次重绘之前调用指定的函数来更新动画

var id = window.requestAnimationFrame(callback);
cancelAnimationFrame(id)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值