setTimeout() 是在指定时间后执行代码,,setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式,setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。
setTimeout用法:
语法: setTimeout(“c”,ms)
c:作为调用setTimeout()后执行的函数或表达式。
ms:以毫秒为单位,在执行代码前需等待的时间。
注意:setTimeout() 只执行 c 一次,如果要多次调用,请使用 setInterval() 或者在c内 再次调用 setTimeout()。
setInterval()用法:
语法:setInterval(“c”,ms).
c: 要调用的函数或要执行的代码串。
ms :周期性执行或者说调用 c 之间的时间间隔,以毫秒计。
推荐尽量不用setInterval()
1、setInterval()会无视代码错误
如果setInterval执行的代码由于某种原因出了错,他不会跳过这段代码,而是持续不断地调用该代码。
2、setInterval()可能不会执行
setInterval()与setTimeout()有所不同,你并不能保证到了时间间隔,代码就准能执行。如果你调用的函数需要花很长时间才能完成,那有些调用会被直接忽略。
3、执行动作的几个写法
1.匿名函数:
setInterval(function () {
…
},1000);
2.函数名,不带参数
setInterval(a,1000);
3.函数名,有参,把函数当作字符串
var b=…
setInterval(“a(b)”,1000);