节流 throttle 与 去抖 debounce的区别主要在触发时机上:
debounce(func, wait, options)
:创建并返回函数的防反跳版本,将延迟函数的执行(真正的执行)在函数最后一次调用时刻的wait毫秒之后,对于必须在一些输入(多是一些用户操作)停止之后再执行的行为有帮助。将一个连续的调用归为一个,如果连续在wait毫秒内调用,最后只有最后一次会执行
throttle(func, wait, options)
:创建并返回一个像节流阀一样的函数,当重复调用函数的时候,最多每隔指定的wait毫秒调用一次该函数;不允许方法在每wait毫秒间执行超过一次,如果连续在wait毫秒内调用,最后执行会均匀分布在大约每wait一次
原文:https://www.cnblogs.com/150536FBB/p/14716690.html