3年前端工程师高频面试题(含详细实战答案).docxVIP

  • 0
  • 0
  • 约5.47千字
  • 约 8页
  • 2026-08-23 发布于河北
  • 举报

3年前端工程师高频面试题(含详细实战答案).docx

3年前端工程师高频面试题(含详细实战答案)

一、JavaScript核心基础(必考)

1、讲讲var/let/const的区别?实际开发怎么用?

答案:

1)变量提升:var存在变量提升,声明前访问是undefined;let、const有暂时性死区,声明前直接报错。

2)作用域:var只有函数/全局作用域,没有块级作用域;let、const支持块级作用域(if/for/{}内有效)。

3)重复声明:var允许重复声明;let、const同一作用域不允许重复声明。

4)赋值规则:const声明的是常量,必须初始化,且不能修改基础类型值;引用类型可以改属性;let、var可重复赋值。

开发规范:优先用const,能不变就不变;需要重新赋值用let;业务代码完全不用var。

2、闭包是什么?有什么优缺点?项目中哪里用到?

答案:

闭包就是:内层函数访问外层函数的变量,且外层函数执行结束后,内层函数依然能保留外层变量的引用,形成闭包。

优点:

1)可以私有化变量,避免全局污染;

2)能够缓存数据,延长变量生命周期。

缺点:

1)变量常驻内存,容易造成内存占用过高;

2)使用不当会引发内存泄漏。

项目场景:防抖节流、封装工具函数、React自定义hooks、缓存接口结果、模块化私有方法。

3、原型和原型链讲清楚?instanceof原理是什么?

文档评论(0)

1亿VIP精品文档

相关文档