js里面setInterval和setTimeout相同点和区别

相同点:两个方法都是先触发间隔时间,再触发回调函数

区别:

1.setInterval每隔指定的时间就执行一次表达式,若不停止会一直执行下去

而setTimeout在执行时,是在载入后延迟指定时间后,去执行一次表达式,次数仅为一次

2.将setTimeout包含于被执行函数中,然后在函数外再次使用setTimeout来达到定时执行的目的 

这样,函数外的setTimeout在执行函数时再次触发setTimeout从而形成周而复始的定时效果,但是

这样每次时间就相当于延迟时间+函数执行时间,时间越久,误差越大;

而setInterval是间隔时间去执行函数,并不会产生误差,setInterval适用于显示时间,精确度高

猜你喜欢

转载自blog.csdn.net/u011927449/article/details/107461398