setTimeout()和setInterval()可以用来注册在指定的时间之后单次或重复调用的函数。
setTimeout()方法用来实现一个函数在指定的毫秒数之后运行。它会返回一个值,这个值可以传递给clearTimeout()用于取消这个函数的执行。
setInterval()是在指定的毫秒数的间隔里重复调用,setInterval(updateClock,60000); //每60秒调用一次updateClock。
它也有一个返回值,这个值传递给clearInterval(),用于取消后续函数的调用。
由于历史原因,setTimeout()和setInterval()的第一个参数可以作为字符串传入,如果这么做,这个字符串会在指定的超时时间或间隔之后进行求值(执行eval()),在html5中(IE除外)还允许给这两个函数传入额外的参数,并在调用函数时把这些参数传递过去。然而,支持IE就不要应用些特性。
如果以0毫秒的超时时间来调用setTimeout(),那么指定函数不会立刻执行。相反会把它放到队列中,等到前面处于等待状态的事件处理程序全部执行完成后,再"立即"调用它。