现在的位置: 首页 > 综合 > 正文

JS计时器setTimeout()与setInterval()方法的区别

2019年11月01日 ⁄ 综合 ⁄ 共 570字 ⁄ 字号 评论关闭

转载:http://mrthink.net/js-settimeout-setinterval/

计时器setTimeout()与setInterval()是原生JS很重要且用处很多的两个方法, 但很多人一直误以为是相同的功能: 间隔时间重复执行传入的句柄函数. 但实际上, 并非如此, 既然JS给出了两个不同的命名, 肯定有其迥异之处.

先来看看两者JS手册及英文词典上的解释:

JS手册»setTimeout() : 用于在指定的毫秒数后调用函数或计算表达式;

英文释义»timeout() : 超时;暂时休息;工间休息;

JS手册»setInterval() : 按照指定的周期(以毫秒计)来调用函数或计算表达式. 会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭;

英文释义»interval() : 间隔;间距;幕间休息;

不难看出, 只要我们仔细体会JS手册及命名释义, 就能很容易的区分开两者的区别. 简单的说, 两才的区别在于,setTimeout()方法是在等待指定时间后执行函数, 且只执行一次传入的句柄函数. setInterval()方法是每指定间隔时间后执行一次传入的句柄函数,循环执行直至关闭窗口或clearInterval().

为了使迷惑者更容易理解, 特意写了个例子: 点此查看DEMO

至于用法, 就不用多说了, 明白两者区别后, 该知道怎么取舍了.

抱歉!评论已关闭.