本人四年前端,从入行开始经常听到『大环境不好,狗一狗吧』类似的话,本着小马过河的精神我就要下水试试。水挺凉的。最近想换工作的小伙伴可以参考一下。
合理的面试内容会参考候选人过往的项目经历。比如本人过往主要互联网内部平台经验,vue框架,面试经常问到 vue、微前端、SDK、SSE等。
1. 问答
CSS
- 介绍flex布局,flex:1的意思
- 什么是外边距塌陷,如何解决?什么是BFC
- 如何实现单行省略、多行省略
浏览器
- 介绍事件循环,requestAnimationFrame是什么,requestIdleCallback是什么
- 从URL到页面渲染
- 移动端如何实现自适应布局
网络
- HTTP常用字段、HTTP缓存
- websocket建立连接的过程
- websocket和sse的区别,应用场景
- sse的实现原理
- HTTPS和HTTP区别
- OSI和TCP/IP模型、HTTP2.0特性
绘图
- svg和canvas分别的应用场景
- 在canvas中渲染多个不规则图形,如何处理点击感知点在哪个图形上
Vue
- Vue3与Vue2的区别
- 响应式的原理
- 设计一个组件实现筛选+表格+分页,满足不同业务场景的定制
微前端
- 用过哪些微前端框架,有什么区别
- 微前端框架原理
- 微前端应用场景,如何解决样式隔离
- shadowDom会隔离JS上下文吗
打包工具
- vite为什么比webpack更快
- loader和plugin区别
2. 看代码
- 考察事件循环的理解
- 考察函数提升、函数作用域、块级作用域
3. 写代码
- 树转数组、数组转树
- 大数加法
- 实现事件管理器
- 实现请求并发控制器
- 动态规划(一维or二维)
- 最大回文子串
- 字符串加工
4. 讲项目
- 项目基本信息:时间、简介、自己负责的工作、人员配比、项目价值
- 核心:亮点、细分技术实现、非技术难点
- 其他:项目关注的指标、回望有什么不足
由于我React的经验比较少,面试涉及比较浅。面试下来感觉还都是传统的面试题,可能面的业务都不算激进吧,也印证了大厂新鲜的『中流砥柱』并不多。不过除了常规基础还是需要围绕自己的简历准备。
以上内容随我的review应该会扩充,不准备包含答案。面试准备可以以点带面,不局限某一问题。大家都加油!