前端面试指南

编程题

JavaScript 基础

最基础的两个知识点:

  1. Prototype Chain(原型链)
  2. closure(闭包)

结合这两个知识点学习,我们发现,原型链就是用来方便查找对象上的变量,闭包就是方便查找自由变量,本质上都是为了让 JavaScript 这个编程语言更加丰富,灵活,好用,方便程序员写出更加短小精悍,易于封装和复用的代码。

JavaScript 历史

浏览器环境

node 环境

CSS 基础

前端编程范式

浏览器相关

  • 浏览器事件
  • 事件委托
  • Repaint, Reflow(重绘和回流)
  • 同源策略和跨域
  • CSRF 和 XSS 攻击

网络

HTTP

  • HTTP 状态码
  • GET 请求和 POST 请求的区别
  • HTTP 和 HTTPS 的区别
  • HTTP 缓存

TCP/IP

  • TCP 为什么要三次握手四次挥手

typescript

  • type 和 interface 的区别

react

vue

  • Vue 组件通信方式有哪些,各有什么特点?
  • Vue 项目怎么提高项目性能?举一些例子
  • vue3 在某些场景比 vue2 性能更低,为什么会这样?

其他

  • 新版本发布后,怎么用技术手段通知用户刷新页面?
  • 性能优化数据怎么上报、分析?
  • element ui table 吸顶怎么做,滚动怎么处理等
  • TS 用的多吗?
  • 工作中解决的最有成就感的事?
  • 你在工作中遇到过最大的挑战是什么,怎么解决的?
  • 在团队协作时,有遇到过什么问题吗,如果有冲突你会怎么做
  • 你有什么想问我的?
  • 低代码、怎么动态加载渲染一个组件,底层怎么实现?

2025-07-21

  • 用过哪些 react hooks?
  • 跨站脚本攻击
  • 浏览器跨窗口通信,postMessage,broadcastChanel
  • vue2,vue3
  • 防爬虫手段
  • canvas
  • top left 搭配什么使用?
  • less 语法,module css,怎么定义全局样式,怎么定义变量
  • 暴露出的问题:问 Java 答不上,问 vue 答不上