相同点:两个方法都是先触发间隔时间,再触发回调函数
区别:
1.setInterval每隔指定的时间就执行一次表达式,若不停止会一直执行下去
而setTimeout在执行时,是在载入后延迟指定时间后,去执行一次表达式,次数仅为一次
2.将setTimeout包含于被执行函数中,然后在函数外再次使用setTimeout来达到定时执行的目的
这样,函数外的setTimeout在执行函数时再次触发setTimeout从而形成周而复始的定时效果,但是
这样每次时间就相当于延迟时间+函数执行时间,时间越久,误差越大;
而setInterval是间隔时间去执行函数,并不会产生误差,setInterval适用于显示时间,精确度高