- 1
- 0
- 约3.28千字
- 约 7页
- 2026-07-27 发布于河北
- 举报
JS闭包高频面试题+详细真实面试答案
一、基础概念题(必问)
1、什么是闭包?闭包的形成条件是什么?
参考答案:
简单来说,闭包就是能够读取其他函数内部变量的函数。
JS中函数执行会形成私有作用域,正常情况下,函数执行完毕后,内部的局部变量会被垃圾回收销毁。但如果内部函数被外部引用,就会阻止变量销毁,形成闭包。
闭包三大形成条件(缺一不可):
函数嵌套(内层函数+外层函数)
内层函数引用外层函数的局部变量/参数
内层函数在外部被调用(全局作用域引用)
面试加分补充:
闭包的本质是:函数保留了对父级作用域的引用,即便父函数执行完毕,作用域也不会销毁。
2、闭包的优缺点是什么?业务中有哪些常用场景?
参考答案:
优点:
实现变量私有化,防止全局变量污染,避免变量冲突
可以让变量常驻内存,实现数据持久化
简化代码,实现柯里化、防抖节流等高阶逻辑
缺点:
变量常驻内存,不会主动销毁,容易造成内存占用过高
使用不当会引发内存泄漏(未手动释放闭包引用)
实际业务场景:
防抖、节流函数(常驻内存保存定时器状态)
模块化开发(ES5模拟私有变量)
循环绑定事件、定时器保存瞬时变量
函数柯里化、缓存结果(闭包缓存数据)
React自定义hooks、计数器状态保存
二、代码输出判断题(面试高频错题)
1、经典循环闭包陷阱题
写出以下代码的输出结果,并解释原因
PlainText
for(vari
您可能关注的文档
- Hive数据仓库高频面试题及详细答案(实操版).docx
- HIV病毒载量检测专项测试题(含详细答案解析).docx
- HIV监测专项考核试题(含答案及详细解析).docx
- HRBP资格认证考试试题(含详细答案解析).docx
- HTTP协议高频面试题及详细答案(实战口语版).docx
- HXD2B型电力机车专业测试题(含详细答案解析).docx
- IATF16949_2016审核员考试真题及详细答案解析.docx
- ICT技术支撑面试题及详细答案(实战接地气版).docx
- ICU护士理论考核试题及详细答案.docx
- ICU进修医师结业考试试题及详细答案.docx
- 朝花夕拾:采朝花之英,拾夕拾之慧(教学设计)语文统编版2024七年级上册.docx
- 21 小圣施威降大圣(教学设计)语文统编版2024七年级上册.docx
- 专题34 文学类文本之环境 中考语文一轮复习.docx
- 专题33 文学类文本之词语、句子含义 中考语文一轮复习.docx
- 《红岩》第2讲 作者与时代背景、“红岩”精神(讲义)语文统编版五四学制新教材八年级上册.docx
- 专题35 文学类文本之人物(描写手法、人物形象、次要人物)中考语文一轮复习.docx
- 专题36 文学类文本之情节(情节概括、情节手法、情节作用)中考语文一轮复习考点.docx
- 13 纪念白求恩(教学设计)语文统编版2024七年级上册.docx
- 互联网行业运营部运营员数据监控分析手册(执行版).docx
- 教育行业信息中心运维员网络运维管理工作手册(执行版).docx
原创力文档

文档评论(0)