原文地址:https://mp.weixin.qq.com/s/D0m_d74uRZPYOxJqpAkKhQ
前言
虽然马上就要金九银十了,面试的人应该不少,虽然我也有在面,写文的目的主要是梳理下知识,能对复习有点帮助就行,本文主要针对前端知识体系相关,涉及的内容有:
- 浏览器
- 计算机网络
- 前端基础(html、css、js)
- node
- webpack
- 数据结构和算法
- web安全
- 前端工程化(编译原理的应用)
- 渲染优化
- 性能监控
不包括:
- 跨端(小程序、混合应用)
- 框架
- typescript
- 移动端
不过前端是真的内卷啊,内容是真多,并丢了点面试题作为参考,以上基本涵盖前端整个知识体系。
其余部分的话,就不算很熟了,所以有人要整第二部分吗?
其他
看了下评论,有人对自己的能力感觉受限,这也正常,由于前端体系本身内容比较多,该文也只是整理了下,没必要全部都关注,只是目前的一个趋势而已。
目前的前端领域方向:
- 可视化
- 跨端
- 小程序
- 工程化
- 游戏
- DevOps
- webAssembly(rust、c、cpp)通过其他语言对前端进行扩展,实现前端无法做到的方案
- 音视频(FFmpeg)
- 全栈
必备:
- html、css、js
- typescirpt(2021了,现在ts也差不多算必备技能了)
- 框架
- 浏览器相关知识
- 监控、埋点
- 团队协作
可选:
- 计算机网络
- 编译原理
- 数据结构和算法
- 单元测试
前端知识体系
浏览器
- 从输入网址到看到网页发生了什么
- dom 解析规则
- css、js是否会阻塞渲染
- xss、csrf
- 重绘和重排的区别
- 浏览器缓存是怎样的
- 跨域
作为个前端,毕竟每天都和浏览器打交道,不懂浏览器的前端不算好前端。
前端基础
CSS
- css 盒模型
- bfc
- 居中
- 伪类和伪元素
- css选择器优先级
CSS层叠上下文
js
- 事件循环
- 原型链
- this
- 作用域
- 闭包
- 柯里化
- 事件流
- 数据类型
- promise、generator、async await
- 0.1 + 0.2 为什么不等于0.3 (IEEE754)
- 浮点精度
计算机网络
- https 为什么安全
- http2的特点
- tcp阻塞
- http状态码
- http3
- http和https握手
前端工程化
- amd、cmd、esmodule、commonjs区别
- import from 和require、import()区别
- babel
- vite
- eslint
- postcss
- ast
- 微前端
node
- 模块查找机制
- stream 流
- 非阻塞异步io
- 中间件
深入浅出node中间件原理
Node.js理论实践之《异步非阻塞IO与事件循环》
webpack
- loader和plugin的区别
- tapable
- webpack hmr原理
- webpack 编译流程
- webpack 优化
- tree shaking
性能优化
- 常见的性能优化方案
- 一些性能指标
performance各阶段:
前端监控
一篇讲透自研的前端错误监控
数据结构和算法
- 算法导论
- 剑指offer
- 小灰的漫画算法