防抖简单的理解就是,取消了前面的操作,只执行最后一次操作。
节流是指只执行第一次操作,取消后面的操作。
设置时间间隔为100ms,然后频繁触发touchmove,那么节流应该每100ms执行一次,而防抖是在100ms内频繁触发会清空定时器。
防止抖动应该是:图片加载的时候,可能会因为其它不确定因素(例如网络不稳定等),无法瞬间加载到图片,即无法马上撑开图片的空间,而是一截一截显示出来,这样就会导致后面的元素无法正常排版,出现抖动的情况。所以在最初,打算使用div去先撑开图片的空间。
1、函数防抖和节流,都是控制事件触发频率的方法。
2、函数防抖,这里的抖动就是执行的意思,而一般的抖动都是持续的,多次的。假设函数持续多次执行,我们希望让它冷静下来再执行。也就是当持续触发事件的时候,函数是完全不执行的,等最后一次触发结束的一段时间之后,再去执行。触发事件后n秒内函数只会执行一次,如果n秒内高频事件再次被触发,则重新计算时间。
3、节流的意思是让函数有节制地执行,而不是毫无节制的触发一次就执行一次。节流就是保证一段时间内只执行一次核心代码。事件触发时,在n秒内只会执行一次,所以节流会稀释函数的执行频率。