setTimeout
定义
setTimeout() 方法用于在指定的毫秒数后调用函数或计算表达式。
setTimeout() 只执行函数一次,如果需要多次调用可以使用 setInterval(),或者在函数体内再次调用setTimeout()
用法
code/function: 必须。要调用一个代码串,也可以是一个函数。
milliseconds: 必须。周期性执行或调用 code/function 之间的时间间隔,以毫秒计。
param1, param2, ...:可选。 传给执行函数的其他参数(IE9 及其更早版本不支持该参数)。
setTimeout(code/function, milliseconds, param1, param2, ...);
例子
// 三秒后弹出hello
setTimeout(function(){ alert("Hello"); }, 3000)
setInterval
定义
setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式。
setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。由 setInterval() 返回的 ID 值可用作 clearInterval() 方法的参数。
用法
code/function: 必须。要调用一个代码串,也可以是一个函数。
milliseconds: 必须。周期性执行或调用 code/function 之间的时间间隔,以毫秒计。
param1, param2, ...:可选。 传给执行函数的其他参数(IE9 及其更早版本不支持该参数)。
setInterval(code/function, milliseconds, param1, param2, ...);
例子
// 每三秒弹出hello
setInterval(function(){ alert("Hello"); }, 3000)
区别总结
setTimeout() 方法只运行一次,也就是说当达到设定的时间后就开始运行指定的代码,运行完后就结束了,次数是一次。
setInterval() 是循环执行的,即每达到指定的时间间隔就执行相应的函数或者表达式,只要窗口不关闭或 clearInterval() 调用就会无限循环下去。