频繁操作DOM会造成浏览器的卡顿,响应不及时,引起浏览器的重绘重排,从而加重了浏览器的压力
频繁的调用后台接口,好好的接口被前端玩坏,造成页面空白,崩溃,容易被后端同学提刀来见
既要提升用户体验,又要减少服务器端的开销...,实时搜索,对DOM元素频繁操作,请求资源加载等耗性能的操作,可能导致界面卡顿,浏览器奔溃,页面空白等情况
而解决这一问题的,正是函数节流与函数防抖
函数节流
定义: 节约(减少)触发事件处理函数的频率...三峡大坝设置很多水闸)的例子:
高频事件就像是一个大开的水龙头,水流源源不断的大量流出,就像代码在不断的执行,若不加以控制,就会造成资源的一种浪费
对应页面中的,若是表单中连续点击提交按钮,监听滚动事件,连续下拉加载等请求服务器的资源...未使用防抖时,每次键盘keyup弹起一次,就会触发一次,用户未输入完成就提示输入有误,这种体验不是很好
换而言之,如果每次键盘弹起时,都发送Ajax请求,这种思路本是没错的,但是若是间隔时间很短,连续输入...,总是频繁的发送Ajax请求,那就造成页面卡顿,服务器端的压力了
正常的效果 示例效果如下所示:应该等键盘内容输入完之后,才触发事件处理函数
?