前端面试经常会有很多问题是面试时候会问,但是工作中却很少使用。还有一类是面试高频提问,工作中也很重要的问题。下面要说的面试题就是这个类型。防抖和节流,我在最开始的时候经常会把这两个概念搞混。但是用心区分的话还是很好记住两者的区别。
1.防抖和节流的概念
防抖,字面意思防止抖动,当你不抖动的时候我在开始执行,是减少执行的次数。
节流,节省流量,函数一直在执行,只是减少了执行的频率。
2.场景
防抖的常用场景是搜索框输入内容自动搜索的功能,在输入信息的时候为了避免每次敲击键盘都去执行搜索,加入防抖函数,就可以只在每次停止输入的时候执行搜索。
节流的常用场景比如我们滑动页面的滚动条的时候,我们监控滚动条的位置输出位置信息,如果不使用节流的话,稍微滑动滚动条就会获取大量的中间信息。这个时候使用节流就会减少信息输出的频率。
3.函数实现
防抖
节流
上面就是防抖和节流函数的实现方式,附带测试案例。
以上是个人的面试问题总结,有问题欢迎下面留言交流。