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

沈阳谷歌网站建设金湖建设局网站

沈阳谷歌网站建设,金湖建设局网站,学前端好找工作吗,企查查企业信息查询免费下面是 JavaScript 中常见的三个面试高频考点:✅ 一、防抖(Debounce)📌 场景:例如搜索输入框,每次输入触发搜索太频繁;希望用户停止操作后一段时间再触发函数。✅ 实现方式:function…

下面是 JavaScript 中常见的三个面试高频考点:


✅ 一、防抖(Debounce)

📌 场景:

  • 例如搜索输入框,每次输入触发搜索太频繁;

  • 希望用户停止操作后一段时间再触发函数

✅ 实现方式:

function debounce(fn, delay = 300) {let timer = null;return function (...args) {clearTimeout(timer);timer = setTimeout(() => {fn.apply(this, args);}, delay);};
}

✅ 使用方式:

window.addEventListener('resize', debounce(() => {console.log('窗口大小变化,执行逻辑');
}, 500));

✅ 二、节流(Throttle)

📌 场景:

  • 例如滚动监听、按钮点击,频繁触发但希望控制执行频率

  • 比如希望每 500ms 执行一次即可。

✅ 时间戳实现:

function throttle(fn, delay = 300) {let lastTime = 0;return function (...args) {const now = Date.now();if (now - lastTime > delay) {lastTime = now;fn.apply(this, args);}};
}

✅ 使用方式:

document.addEventListener('scroll', throttle(() => {console.log('节流执行 scroll');
}, 200));

✅ 三、数组扁平化(Flatten Array)

📌 场景:

  • 嵌套数组 [1, [2, [3, [4]]]] 要变成 [1, 2, 3, 4]


✅ 方法 1:递归实现

function flatten(arr) {return arr.reduce((acc, val) =>Array.isArray(val) ? acc.concat(flatten(val)) : acc.concat(val), []);
}

✅ 方法 2:flat(Infinity)(ES10 简洁)

const arr = [1, [2, [3, [4]]]];
const result = arr.flat(Infinity);

✅ 方法 3:迭代 + 栈实现(不使用递归)

function flatten(arr) {const stack = [...arr];const result = [];while (stack.length) {const item = stack.pop();if (Array.isArray(item)) {stack.push(...item);} else {result.unshift(item); // 反顺序需要 unshift}}return result;
}

✅ 总结对比

技术适用场景核心原理
防抖停止输入后再处理每次都清定时器
节流控制频繁触发频率设置时间戳或定时器
扁平化处理嵌套数组递归 / ES10 flat / 栈

http://www.dtcms.com/a/441677.html

相关文章:

  • 淳化网站制作我自己的网站怎么做关键词优化
  • 深圳网站建设工作在线文字logo设计
  • 网站开发 聊天窗口镇平微网站开发
  • 网站平台延展性广州品牌网站设计价格
  • 网站开发合作意向书网站域名使用费用
  • 音乐网站的音乐怎么做音乐试听wordpress文章分页共多少页
  • 怎么选择做网站的公司专业建设情况
  • 申请网站空间是申请域名吗个人新闻类网站模板
  • 网站建设流程是什么意思解决方案网站设计
  • 网络公司 网站设计做衣服的教程网站
  • 网站内容创造深夜免费软件app下载
  • 广州网站建设亅新科送推广全国小微企业名录
  • 手机网站课程360优化大师历史版本
  • 网站都有什么类型的极简网站设计
  • 网站截图环境 php成品网站1688入口的功能介绍
  • 赶集网的二级域名网站怎么做分类信息网站建设模板
  • 郑州做网站华久科技开发一个电商网站
  • 中国建设部网站四库平台seo关键词排名优化如何
  • 网站开发网页前置开发推广做网站
  • 珠海建网站价格装饰公司网站建设方案
  • 像网站的ppt怎么做的网页设计培训学费多少
  • 湖北省建设局网站首页深圳网站设计深圳网站建设
  • 做游戏必备的几个网站app软件开发培训班
  • 网站建设启动资金预算一套网页ui设计多少钱
  • 网站新闻打不开微信公众号的管理
  • 做移动网站临沂建设局网站
  • 手机网站酷站公司网络推广网站就选火13星仁德
  • 免费1级做爰片观看网站在线视频微信小程序开发平台登录
  • 济南外贸网站凡科网站免费注册
  • 做影视网站侵权吗wordpress 项目管理