1、setTimeout(延时器)

setTimeout()完整的写法是window.setTimeout(),由于window是全局作用域,通常写的时候省略

setTimeout()方法用来指定某个函数或字符串在指定的毫秒数之后执行。它返回一个整数,表示定时器的编号,这个值可以传递给clearTimeout()用于取消这个函数的执行

setTimeout有两个参数,第一个是function:表示将要执行的函数或者代码
第二个参数delay是推迟执行的毫秒数。如果省略则立即执行

2、setInterval (定时器)

setInterval()的完整写法是window.setInterval(),同样可以省略

setInterval() 方法重复调用一个函数或执行一个代码段,在每次调用之间具有固定的时间延迟。每次调用都有固定的时间间隔,会返回一个时间间隔编号该编号唯一地标识时间间隔,在清除定时器clearInterval的时候就调用此编号来清除。

3.二者的区别

1.setTimeout(fn, time),超时调用,在时间大于等于 time 时调用;
setInterval(fn, time),是间歇调用,每隔 time 调用一次。
2.两种定时器清除方法不一样
setInterval()对应的是 clearInterval(id);
setTimeout()对应的是 clearTimeout(id);
3.setTimeout在规定的时间后使用一次就停止操作了
setInterval会按照这个规定的时间一直循环下去

想测试一下自己js知识掌握,不妨试试这 web前端工程师(js)