首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
web3366
广州大学 Web前端
关注
已关注
取消关注
防抖的目的是确保在指定的时间间隔内,函数只被执行一次,而节流是限制函数在一定时间内被调用的次数
@阿珊和她的猫:
面试高频手撕题 | 23.实现一个防抖和节流
一、知识点 防抖和节流都是在 JavaScript 中常见的用于优化性能的技术。 防抖:是一种在短时间内多次触发同一事件,只执行最后一次或只在开始时执行的技术。它的目的是减少不必要的事件调用,避免在短时间内频繁执行某个操作。 节流:是一种限制某个函数在一定时间内只能被调用一次的技术。它的目的是控制函数的调用频率,减少不必要的性能消耗。 二、思路分析 防抖的思路:在事件被触发后,延迟一定时间执行回调函数,如果在延迟时间内该事件再次被触发,则重新计时,直到延迟时间内没有再次触发事件,才执行回调函数。 节流的思路:在指定的单位时间内,只允许触发一次函数,如果该单位时间内触发多次函数,只有一次生效。 三、JavaScript 解答 防抖的实现: function antiShake(fn,delay) { let timer; return function(...args) { // 清除定时器 clearTimeout(timer); // 使用定时器 timer = setTimeout(()=>{ fn.apply(this,args); },delay) }}const button = document.getElementById('myButton');// 绑定事件处理程序button.addEventListener('click', antiShake(()=>{ console.log('按钮被点击了')},1000)) 在上述示例中,使用setTimeout实现了防抖功能。在指定的单位时间内,只响应最后一次。 节流的实现 function throttling(fn,delay) { let flag = true; return function(...args) { if(flag) { flag = false; setTimeout(()=>{ fn.apply(this,args); flag = true },delay) } }}const button = document.getElementById('myButton');// 绑定事件处理程序button.addEventListener('click',throttling(()=>{ console.log('按钮被点击了')},1000)) 在上述示例中,使用了一个布尔值flag来控制函数的执行,实现了节流功能。 四、Java 解答 在 Java 中,你可以使用TimeUnit类来实现防抖和节流。 防抖的实现: import java.util.Timer;import java.util.TimerTask;public class Debounce { private Timer timer; private Runnable task;
点赞 2
评论 2
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
03-27 00:42
蚌埠坦克学院 C++
社招 硕1.5 wxg 面委凉经
岗位:客户端开发timeline3.4 简历给到猎头3.9 一面 3.11 二面3.13 面委笔试3.18 三场面委面,早中晚各一场前两场面委面聊的很好,被最后一个面委面试官一票否决一面1.深入讲讲工作项目中遇到的挑战和解决办法2.性能优化问题的解决思路3.在做方案设计的时候怎么做好可维护性,比如从设计模式出发4.常规八股 线程和协程的区别,协程的底层实现原理 TCP的流量控制和拥塞避免5.一道算法题 能被三整除的最大和二面1.分享一下在工作中遇到的难题2.深挖工作项目中的技术原理3.mac上对客户端进程的权限管理,内核事件的安全性如何保证4.两道算法题: 把中文数字转换为int; 给定字符串...
查看16道真题和解析
点赞
评论
收藏
分享
今天 10:04
南京邮电大学 Java
华为OD-C++开发面经-24届空挡
背景:本人24届,一战考研失败,毕业后参加考公最终下岸,本科就读双非目标院校,专业是网络工程,计算机专业方面的课程都学过,但是无实习经历无工作经验。在考公下岸后,我大概花了两个星期复习了C++,接着由花了两个星期刷完了力扣hot100的题目。在这之后,我联系到了栗栗姐,随即开始准备笔试和面试。 机考:花了两个多星期刷题,题库大概刷了100多道吧。机试前最好熟悉ACM的输入输出模式,如果只用过力扣的核心代码模式还是比较吃力的。精准核酸检测(100)图搜/BFS贪心的商人(100)贪心算法,参考力扣的122题简单的解压缩算法(200)字符串处理/栈综测:往积极乐观的方面选就行了,注意前后一致。 资...
发面经攒人品
点赞
评论
收藏
分享
03-24 17:57
门头沟学院 Java
还内推到我微信了
yakuso:
你这头像哈哈哈
点赞
评论
收藏
分享
03-26 16:35
北京中南海业余大学 Java
hr不知道期望城市可以填多个吗?
emmm没想到以这种方式被挂了
找工作时遇到的神仙HR
点赞
评论
收藏
分享
03-31 21:46
广东机电职业技术学院 Java
大专计算机应该怎么走,求指导
软件技术专业,现在大二了,想知道除了升本的知识以外,应该往哪个方向学,很迷茫,各位前辈能给点建议吗
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
Vibe Coding开发前的 7 个关键步骤
5120
2
...
我放弃互联网大厂了。。
3546
3
...
字节实习一、二、三、HR面面经
3041
4
...
京东零售平台产品与研发中心一面
2633
5
...
双非前端字节一面面经(难度 plus ultra 版)
2512
6
...
美团后端暑期实习一面
1972
7
...
美团暑期二面
1935
8
...
如何把面试主动权握在手里?Ai岗面试焚诀!
1935
9
...
腾讯前端暑期实习一面
1935
10
...
我招了!当年就是被招行这么招进去的
1872
创作者周榜
更多
正在热议
更多
#
你觉得大几开始实习最合适?
#
11638次浏览
114人参与
#
你都用vibe coding做过什么?
#
5743次浏览
215人参与
#
招商银行数字金融训练营
#
69562次浏览
798人参与
#
面试被问到不会的问题,你怎么应对?
#
10009次浏览
85人参与
#
你现在一天AI几次?
#
4490次浏览
68人参与
#
你见过哪些招聘隐形歧视?
#
8426次浏览
76人参与
#
厦门银行科技岗值不值得投
#
13020次浏览
308人参与
#
Vibe Coding 会干掉初级岗位吗?
#
9853次浏览
141人参与
#
做完笔试后你收到面试了吗?
#
10436次浏览
96人参与
#
AI Coding实战技巧
#
3360次浏览
91人参与
#
如果人生可以debug你会改哪一行?
#
4372次浏览
85人参与
#
大厂实习和小厂实习最大的区别是什么?
#
20000次浏览
151人参与
#
牛友の3月总结
#
14447次浏览
134人参与
#
秋招OC许愿
#
425005次浏览
2705人参与
#
面试中,你被问过哪些奇葩问题?
#
91713次浏览
856人参与
#
uu们,春招你还来吗?
#
51661次浏览
252人参与
#
节后第一天上班,我的精神状态
#
19921次浏览
139人参与
#
面试吐槽bot
#
182723次浏览
872人参与
#
___岗狗都不干,我干!
#
78242次浏览
312人参与
#
降低公积金和取消房补怎么选
#
29621次浏览
90人参与
#
七猫笔试
#
6038次浏览
39人参与
#
Claude Code泄露源码
#
3425次浏览
51人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务