前端实习硬核攻略
前端基础三大件
HTML
- 常用的HTML元素
- 语义化标签理解
- HTML5新特性(插入音频、视频ect)
CSS
- 盒子模型
- 选择器及权值比较,BFC,定位,Flex布局,浮动布局等问题
- 应用:圣杯与双飞翼模型,水平垂直居中
- CSS3新特性
JS
- 基础语法
- 知识点相关:
- 作用域 原型链 多种继承方法 闭包
- 变量提升** this指向** bind,apply和call,new操作符原理 事件循环
- promise原理 async和await等
- 手写系列
- 防抖和节流 promise.all和promise.race 寄生组合继承
- 数组的一些常用方法的使用 深浅拷贝 解析url函数
- apply,bind和call的实现 数组去重和扁平化 函数柯里化
框架:Vue和React
Vue
- 双向数据绑定原理
- computed和watch区别
- 生命周期钩子
- v-if和v-show区别
- 组件间通信
- vuex,vue-router等
- vue3.0特性
React
- virtual dom实现
- diff算法
- 组件间通信
- redux和mobx
- hook使用和原理
算法和数据结构
编程题
- 《剑指offer》
- Top100热题
问答
- 十大排序(选择、冒泡、插入、归并,快排、堆排,希尔)
- 二分查找
- 平衡多叉树(B树和B+树)
- DFS和BFS
- 贪心算法
- 动态规划
- 哈希算法
计算机网络、浏览器原理、操作系统
计算机网络
- 八股文问到最多的部分
- 五层网络体系结构的理解
- TCP三次握手和四次挥手过程
- TCP可靠传输的原理
- TCP和UDP的区别
- 拥塞控制和流量控制的区别
- HTTP和HTTPS的区别
- HTTPS加密原理
- HTTP1.0,2.0和3.0有什么变化
- 常见状态码含义(200,403,404,500等)
- 常见的http方法(get和post的区别)
浏览器原理
- dom树的建立过程
- 缓存策略:cookie、session、token、localstorage和sessionstorage等
- 内存泄漏:JS内存管理、v8垃圾回收
- 前端路由:history和hash模式
- 浏览器架构:浏览器进程,渲染进程,GPU进程等
操作系统
- 进程和线程的区别
- 进程间通信方式
- 进程同步
- 进程调度策略
- 产生死锁的原因,以及解决方法(四个方向:预防、避免、检查和解除)
前端实习生解读
共性特征
- 要求掌握基础部分(前端基础和计算机基础)
- HTML、CSS、JS要求的熟练度很高
个人理解
- 注重基本功和思维能力
- 要有自己动手实践的项目,必要时可以引导面试官
- 找到自己的亮点
- 阿里重基础,字节重算法,腾讯重项目
面试流程
素质测评->笔试->一面->二面->三面->HR面
素质测评
- 推理题+性格测试题(部分企业重视)
- 图形推理题较难
笔试
- 1020道选择题+45道编程题
- 选择题着重考察基础,编程题逐渐涉及到一些算法
一面
- 计算机网络,操作系统的基础知识
- 前段基础知识
- 算法题
- 逻辑思维题
二面
- 着重问项目、考察对技术的理解深度
- 后端相关知识或(交叉面)
- 与所擅长的语言相关的知识(交叉面)
- 数据库知识(交叉面)
- 算法相关知识(交叉面)
三面
- 谈谈你对业务场景中的某种情况的理解
- 说说未来的职业规划
- 谈谈你对某个技术的理解,甚至前段的理解
- 手写一道算法题,讲一下你的思想
- 讲一讲大学期间最难忘的事…
HR面
- 个人基本情况
- 其他与工作相关的问题
- ps:阿里较为重视HR面
面试避坑排雷
- 不要着急说不会
- 把问题引申到自己擅长的问题或方面
- 题目之前刷过,也不要立马写出最优解
- 换岗加面,相对简单,轻松地应对
学习提升
- 前端实习常考题目
- HTML和CSS:MDN
- JS:红宝书,冴语(Github)
- 入门了解:菜鸟教程,w3c网
- React和Vue:官方文档,《Vue的设计与实现》(霍春阳)
- 八股文:计算机网络相关,操作系统相关,浏览器原理相关
- 算法与数据结构:力扣Top 100,《剑指offer》
简历
- 项目经历或竞赛经历遵循STAR法则
- 简历和岗位要匹配,技能点要大致吻合
- 用超级简历(APP)模板,简约大方避免花哨
投递技巧
- 官网(实力强)
- 内推(高效)ps:字节内推免笔试
- 其他招聘APP
提高面试成功率
- 面试录音,及时复盘,写一份面经
- 面试前可以反复背一下自己之前整理的八股文
- 面试时间表
❤️这里是 三千步, 让我们一起学习进步~❤️