- 1
- 0
- 约8.55千字
- 约 12页
- 2026-08-23 发布于河北
- 举报
2年前端工程师高频面试题(含详细实战答案)
说明:本套题库适配1-3年前端从业者,聚焦日常开发高频考点、工程化实战问题、业务场景解决方案,答案贴合企业真实面试标准,摒弃空洞理论,侧重落地实操。
一、JavaScript核心基础(高频必考)
1、讲讲var、let、const的区别,日常开发如何选择?
参考答案:
三者核心区别集中在变量提升、作用域、重复声明、值修改四个维度:
1.var:函数级作用域,存在变量提升,允许重复声明,可随意修改值。声明的变量会挂载到window全局对象,容易造成全局变量污染,开发中基本不再使用。
2.let:块级作用域({}、if、for内部),无变量提升(存在暂时性死区),不允许重复声明,可修改变量值。
3.const:块级作用域,无变量提升,不允许重复声明,声明后基础类型值不可修改,引用类型可修改内部属性(仅锁栈内存地址,不锁堆内存内容)。
开发规范选择:默认全部用const,只有后续需要重新赋值的变量,才改用let,彻底废弃var。
2、什么是闭包?闭包的作用、优缺点及实际使用场景
参考答案:
闭包本质:内层函数能够访问外层函数的作用域变量,且外层函数执行结束后,内层函数依然持有外层变量的引用,不会被垃圾回收。简单说:函数嵌套+内部函数引用外部变量+内部函数被外部调用,就会形成闭包。
核心作用:
1.私有化变量:模拟私有作用域,避
原创力文档

文档评论(0)