中级前端需要会的东西都有那些?

一、JavaScript(核心能力)

这是中级前端的分水岭,必须扎实。

1. 基础但要深入

  • 作用域、闭包、this 指向(手写绑定逻辑)

  • 原型链、继承(ES5 / ES6)

  • 执行上下文、调用栈

  • 事件循环(Event Loop,宏任务 / 微任务)

👉 必须能解释:

  • Promise 为什么是异步的?

  • async/await 本质是什么?

  • setTimeout 和 Promise 执行顺序


2. 进阶能力

  • 手写 Promise(核心逻辑)

  • 防抖 / 节流(应用场景 + 实现)

  • 深拷贝(考虑循环引用)

  • 函数式编程基础(map / reduce / compose)


3. 浏览器相关

  • DOM / BOM 操作

  • 事件机制(捕获 / 冒泡)

  • 浏览器渲染流程(重排 / 重绘)

  • 性能优化(减少重排、虚拟列表等)


二、HTML & CSS(不只是会写)

中级要求是"能还原复杂 UI + 解决兼容问题"。

1. CSS 核心

  • 盒模型(标准 / IE)

  • BFC(解决布局问题)

  • Flex / Grid(必须熟练)

  • 定位(absolute / relative / fixed / sticky)


2. 进阶能力

  • 响应式设计(媒体查询)

  • CSS 预处理器(Sass / Less)

  • CSS 模块化(BEM、CSS Modules)

  • 动画(transition / animation)


三、框架(React / Vue 至少精通一个)

你现在用 React/Vue,这块是重点。


React(建议重点)

1. 基础必须熟练

  • Hooks(useState / useEffect / useMemo / useCallback)

  • 组件通信(props / context)

  • 生命周期(理解 hooks 对应关系)


2. 进阶

  • 自定义 Hooks

  • 状态管理(Redux / Zustand)

  • 性能优化(memo / useMemo / useCallback)

  • 路由(react-router)


3. 原理(中级必须懂)

  • 虚拟 DOM

  • diff 算法

  • Fiber 架构(基本理解)


Vue(如果你用 Vue)

  • Vue2 响应式(Object.defineProperty)

  • Vue3 响应式(Proxy)

  • Composition API

  • Vue Router / Pinia


四、工程化能力(非常关键)

这是很多人卡在"初级"的原因。

1. 构建工具

  • Webpack(必须理解核心概念)

  • Vite(现代项目必备)


2. 必须掌握

  • loader / plugin 区别

  • 打包优化(代码分割、懒加载)

  • 环境变量管理

  • source map


3. 代码质量

  • ESLint / Prettier

  • Git(rebase / cherry-pick)


五、网络 & 浏览器

中级一定会问。

1. HTTP

  • HTTP1.1 vs HTTP2

  • 状态码(200 / 301 / 304 / 404 / 500)

  • 缓存(强缓存 / 协商缓存)


2. 前端必须懂

  • 跨域(CORS / JSONP / 代理)

  • Cookie / localStorage / sessionStorage 区别

  • Token 认证(JWT)


六、性能优化(面试高频)

  • 首屏优化(懒加载、骨架屏)

  • 资源压缩(gzip / brotli)

  • 图片优化(WebP)

  • CDN 加速

  • 长列表优化(虚拟滚动)


七、前端安全(很多人忽略)

  • XSS(如何防)

  • CSRF(如何防)

  • 点击劫持


八、TypeScript(中级加分项 → 现在几乎必备)

既然你已经在学 TS,这块要重点搞:

  • 泛型(重点)

  • 类型推导

  • interface vs type

  • utility types(Partial / Pick / Record)


九、项目经验(决定你是不是"中级")

不是写 demo,而是:

  • 能独立负责一个模块

  • 能设计组件结构

  • 能做性能优化

  • 能封装通用组件 / hooks

  • 能排查线上问题


十、加分项(冲高级)

  • Node.js(简单服务能力)

  • SSR(Next.js)

  • 微前端

  • ECharts(你已经在用,是加分项)

  • CI/CD

相关推荐
问天_观心6 分钟前
大模型微调学习(二)
人工智能·python·深度学习·学习·语言模型·transformer
梦曦i18 分钟前
@meng-xi/create-uni-app vs unibest:轻量脚手架与重型框架的定位之争
前端·uni-app
指掀涛澜天下惊21 分钟前
强化学习进阶篇八 策略梯度算法
深度学习·学习·算法·强化学习
平头哥技术团队25 分钟前
Day 10 | 工欲善其事:VS Code 配置与项目归档
android·开发语言·前端·javascript·html·交互
star learning white37 分钟前
STM32入门学习5
stm32·嵌入式硬件·学习
传奇开心果编程40 分钟前
【Rust入门知识点学与练】第4课:条件判断 if / else
开发语言·学习·rust
乌恩大侠1 小时前
GH200 新增 NVMe SSD 分区、格式化与挂载完整流程
运维·服务器·前端
yume_sibai1 小时前
Element Plus 数据展示组件完全指南(15个核心组件)
前端·javascript·vue.js
lifallen1 小时前
Skill 的生命周期:问题消失以后
人工智能·学习·ai·ai编程
千谦阙听1 小时前
C++类和对象(中):默认成员函数、构造与析构、拷贝构造、运算符重载
开发语言·c++·学习