当前位置: 首页 > news >正文

这些实用工具函数都撕不明白还敢说自己是高级前端

很多工具函数大家都知道,比如防抖函数,节流函数,深拷贝函数等,一问都会,一写就废,用lodash的掘友们,是不是基本功都退化了?CV工程师请不要把基本功给弄丢了,下面我来整理一下项目中常用的工具函数,多练练吧,不然面试现场写不出来多丢人啊!

1.防抖函数

/*** 防抖函数,最后一次调用,至少等待delay时间才执行,如果在delay时间内再次调用就重新计时。* @param {*} func  传入执行函数* @param {*} delay 定义间隔时间*/
export const debounce = (func,delay)=>{let timer;return function(...args){clearTimeout(timer);timer = setTimeout(()=>{func.apply(this,args);},delay)}
}

2.节流函数

/*** 节流函数,fuc函数离上一次执行间隔delay才执行下一次,如果在delay时间内就重新计时,如果大于delay则更新最后一次的执行时间。* @param {*} func 执行函数* @param {*} delay 执行时间*/
export const throttle = (func,delay)=>{let timer,lastreturn function(...args){let  now = + new Date();if(last &&  now < last + delay){clearTimeout(timer);timer = setTimeout(()=>{last = now;func.apply(this,args);},delay)}else{last = now;func.apply(this,args);}}
}

3.深拷贝函数

/*** 深拷贝函数* @param {*} obj 参数*/
export const deeClone = (obj) => {//不是引用类型就不拷贝if(!(obj instanceof Object)) return obj //如果形参obj是数组,就创建数组,如果是对象就创建对象let objCopy = obj instanceof Array ? [] : {}  for(
http://www.lryc.cn/news/396570.html

相关文章:

  • git 如何查看 commit 77062497
  • 纯CSS瀑布流
  • vue3 路由跳转新页面并传递参数与获取参数
  • NSAT-8000电源检测软件测试砖式电源模块的方案及优势
  • 短链接服务Octopus-搭建实战
  • STM32(二):STM32工作原理
  • 真实工作项目Java使用apache.poi生成word
  • [Python自动化办公]--从网页登录网易邮箱进行邮件搜索并下载邮件附件
  • mysql8多值索引
  • MT3055 交换排列
  • Zkeys三方登录模块支持QQ、支付宝登录
  • 数字探秘:用神经网络解密MNIST数据集中的数字!
  • 11个IT运维领域必考证书,每一个都含金量极高
  • VScode 常用插件
  • 299k stars利用Public APIs提升开发效率:探索APILayer提供的开源资源
  • 在目标检测数据集上微调Florence-2
  • AI提示词:AI辅导「数学作业」
  • odoo文档的安装
  • 02STM32软件安装新建工程
  • 社区6月月报 | Apache DolphinScheduler重要修复和优化记录
  • Docker 使用基础(2)—镜像
  • Docker学习笔记(三)Dockerfile
  • 学懂C#编程:C# 索引器(Indexer)的概念及用法
  • 汇川CodeSysPLC教程03-2-14 与HMI通信
  • centos部署jar包
  • CSS相对定位和绝对定位的区别
  • SpringCloud之nacos共享配置文件实现多数据源灵活切换
  • 原生小程序生成二维码方法之一
  • Kubernetes k8s Pod容器 探针 健康探测
  • Conformal low power-2.电源感知等效性检查