setTimeout和setInterval

简介: setTimeout和setInterval


  • setTimeout 延迟一段时间执行一次 (Only one)
    setTimeout(function, milliseconds, param1, param2, ...)
    setTimeout(fucntion(){},1000);
    setTimeout('code',millisec)
    clearTimeout() // 阻止定时器运行
setTimeout(function(){ alert("Hello"); }, 3000); // 3s后弹出
setTimeout('alert("Hello");', 3000); // 3s后弹出
  • setInterval 每隔一段时间执行一次 (Many times)
    setInterval(function, milliseconds, param1, param2, ...)
window.setInterval(function(){ alert("Hello"); }, 3000); // 每隔3s弹出

setTimeoutsetInterval的延时最小间隔是4ms(W3C在HTML标准中规定);在JavaScript中没有任何代码是立刻执行的,但一旦进程空闲就尽快执行。这意味着无论是setTimeout还是setInterval,所设置的时间都只是n毫秒被添加到队列中,而不是过n毫秒后立即执行。

那么显而易见,setInterval(function, N) 这段代码意味着,每隔N秒把function事件推到消息队列中,什么时候执行?母鸡啊!


相关文章
|
1月前
|
JavaScript 调度
setTimeout
【10月更文挑战第22天】
10 1
|
3月前
使用requestAnimationFrame模拟实现setTimeout和setInterval
`rafTimeout` 函数采用 `requestAnimationFrame` 实现延时或周期性调用,提供与 `setTimeout` 和 `setInterval` 类似的功能。接受参数包括要执行的函数 `fn`、延迟时间 `delay`(默认 0ms)及是否周期执行 `interval`(默认为单次执行)。返回值为包含 `id` 的对象,可用于取消定时器。通过 `cancelRaf` 或 `cancelAnimationFrame` 方法可取消对应的 `rafTimeout` 定时器。
139 2
使用requestAnimationFrame模拟实现setTimeout和setInterval
|
6月前
|
JavaScript 前端开发
confirm()、setInterval()、setTimeout()
confirm()、setInterval()、setTimeout()
36 0
|
前端开发
setInterval
setInterval
42 0
|
JavaScript 前端开发 Java
|
JavaScript 前端开发
|
JavaScript 前端开发
第46天:setInterval与setTimeout的区别
js的setTimeout方法用处比较多,通常用在页面刷新了、延迟执行了等等。今天对js的setTimeout方法做一个系统地总结。 setInterval与setTimeout的区别 说道setTimeout,很容易就会想到setInterval,因为这两个用法差不多,但是又有区别,今天一起总结了吧! 1、setTimeout 定义和用法: setTimeout()方法用于在指定的毫秒数后调用函数或计算表达式。
1496 0
|
JavaScript 前端开发 API
setTimeout,setInterval你不知道的…
  javascript线程解释(setTimeout,setInterval你不知道的事)  标签: javascript引擎任务浏览器functionxmlhttprequest 2011-11-21 14:22 5672人阅读  分类:...
1340 0