【前端学习】—函数节流(九)

【前端学习】---函数节流(九)

一、什么是函数节流

函数节流:规定在一个单位时间内,事件响应函数只能被触发一次,如果这个单位时间内触发多次函数,只有一次生效。

二、函数节流使用场景

  • window.onresize事件
  • mousemove事件
bash 复制代码
<script>
      //window.onresize
      //单位时间内 只触发一次
      //1、返回值是一个函数
      //2 、开启定时器
      //3、如果定时器存在直接返回false
      //4、定时器内部清空定时器 并且把timer置为null,然后执行我们的事件响应函数


      function throttle(fn, interval) {
        let timer;
        return (event) => {
          if (timer) {
            return false;
          }
          timer = setTimeout(() => {
            clearTimeout(timer);
            timer = null;
            fn(event);
          }, interval);
        };
      }

      window.onresize=throttle(function(event){
         console.log(`event`,event);
      },1000)
    </script>


相关推荐
leiming644 分钟前
CAN 通信协议学习讲义(带图文 + C 语言代码)
c语言·开发语言·学习
网络点点滴1 小时前
组件通信-作用域插槽
前端·javascript·vue.js
kyriewen112 小时前
异步编程:从“回调地狱”到“async/await”的救赎之路
开发语言·前端·javascript·chrome·typescript·ecmascript·html5
Old Uncle Tom2 小时前
Markdown Viewer 再升级
前端
Luna-player2 小时前
Vue3中使用vue-awesome-swiper
前端·vue.js·arcgis
星空2 小时前
RAG学习第一节
学习
知识分享小能手2 小时前
MongoDB入门学习教程,从入门到精通,MongoDB入门指南 —— 知识点详解(2)
数据库·学习·mongodb
SuperEugene2 小时前
Vue3 Pinia 状态管理规范:状态拆分、Actions 写法、持久化实战,避坑状态污染|状态管理与路由规范篇
前端·javascript·vue.js·前端框架·pinia
black方块cxy2 小时前
实现一个输入框多个ip以逗号分隔最多20组,且ip不能重复
java·服务器·前端
@PHARAOH2 小时前
WHAT - AI 时代下的候选人
大数据·前端·人工智能